type TMakeEmberPostMessageParams<dataT> = {
type: string,
data: unknown,
mockSource?: (type: string, data: unknown) => (Promise<dataT> | dataT),
defaultDelay?: number,
settingName?: string,
requestId?: string | number,
};
type TMakeEmberPostMessage<dataT> = (
type: TMakeEmberPostMessageParams<dataT>['type'],
data: TMakeEmberPostMessageParams<dataT>['data'],
mockSource?: TMakeEmberPostMessageParams<dataT>['mockSource'],
defaultDelay?: TMakeEmberPostMessageParams<dataT>['defaultDelay'],
settingName?: TMakeEmberPostMessageParams<dataT>['settingName'],
requestId?: TMakeEmberPostMessageParams<dataT>['requestId'],
) => Promise<dataT>;
Is there a way to generate the args type for TMakeEmberPostMessage
from TMakeEmberPostMessageParams
, without specifying each argument types? That means converting the object type into multiple function argument types.
I can’t change TMakeEmberPostMessage
params to a single object as it’s used in different codebases.
2