build a Request with an enum type and optional value
Request(T this.type, {V withData}):payload = withData{ }