Discriminator in username

This commit is contained in:
Fedor Indutny 2022-10-18 10:12:02 -07:00 committed by GitHub
parent 58f0012f14
commit 00f82a6d39
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
54 changed files with 2706 additions and 892 deletions

27
ts/state/util.ts Normal file
View file

@ -0,0 +1,27 @@
// Copyright 2022 Signal Messenger, LLC
// SPDX-License-Identifier: AGPL-3.0-only
export type PromiseAction<Type extends string, Payload = void, Meta = void> =
| ({
type: Type;
payload: Promise<Payload>;
} & (Meta extends void
? { meta?: void }
: {
meta: Meta;
}))
| {
type: `${Type}_PENDING`;
meta: Meta;
}
| {
type: `${Type}_FULFILLED`;
payload: Payload;
meta: Meta;
}
| {
type: `${Type}_REJECTED`;
error: true;
payload: Error;
meta: Meta;
};