UNPKG

repond-events

Version:
32 lines (27 loc) 1.37 kB
export type UnsetEmojiKeysType = Record<string, string>; export interface RepondEventsTypesUntyped<T_Group, T_Event, T_GenericParamA> { EventGroups: Record<string, Record<string, any>>; ValueGroups: Record<string, Record<string, any>>; KnownChainIds: string; EventParameters: any; // to type event parameter with dependant types EmojiKeys: UnsetEmojiKeysType; } // eslint-disable-next-line @typescript-eslint/no-empty-interface export interface CustomRepondEventsTypes<T_Group, T_Event, T_GenericParamA> {} // The final usable types, with the custom types overriding the default ones export interface RepondEventsTypes<T_Group, T_Event, T_GenericParamA> extends Omit< RepondEventsTypesUntyped<T_Group, T_Event, T_GenericParamA>, keyof CustomRepondEventsTypes<T_Group, T_Event, T_GenericParamA> >, CustomRepondEventsTypes<T_Group, T_Event, T_GenericParamA> {} // How to use in project: /* declare module "repond-events/src/declarations" { interface CustomRepondEventsTypes<T_Group, T_Event, T_GenericParamA> { EventGroups: typeof allEventGroups; KnownChainIds: "mainCardAniChain" | "mainCardOpacityDelayChain" | "miniCardSetAniChain"; EventParameters: CustomEventParameters<T_Group, T_Event, T_GenericParamA>; // EventParameters: never; // use never if there's no custom types to keep default types working } }*/