//#region src/channel/types.d.ts type MessageBase = { requestID: string; }; type RequestMessage = { type: TType; data: TData; } & MessageBase; type ResponseMessageBase = { status: number; msg: string; } & MessageBase; type SuccessResponseMessage = { data: TData; error?: never; } & ResponseMessageBase; type ErrorResponseMessage = { data?: never; error: unknown | TError; } & ResponseMessageBase; type ResponseMessage = SuccessResponseMessage | ErrorResponseMessage; type ExtractSuccessResponseMessage = Extract; type ExtractErrorResponseMessage = Extract; type UnknownRequestMessage = RequestMessage; type UnknownSuccessResponseMessage = SuccessResponseMessage; type UnknownErrorResponseMessage = ErrorResponseMessage; type UnknownResponseMessage = UnknownSuccessResponseMessage | UnknownErrorResponseMessage; type UnknownMessage = UnknownRequestMessage | UnknownResponseMessage; type Transaction> = { request: TRequest; response: TResponse; }; type TransactionMethod> = (data: TTransaction["request"]["data"]) => Promise>; type TransactionHandler> = (request: TTransaction["request"], response: { success: (data: ExtractSuccessResponseMessage["data"], status?: number) => ExtractSuccessResponseMessage; error: (error: ExtractErrorResponseMessage["error"], status?: number) => ExtractErrorResponseMessage; }) => Promise | TTransaction["response"]; type TransactionsMethods> = { [Key in keyof TTransactions]: TransactionMethod }; type TransactionsHandlers> = { [Key in keyof TTransactions]: TransactionHandler }; type UnknownTransaction = Transaction; declare enum InternalEmitterRequestType { Connect = "connect" } type InternalEmitterTransactions = Record> = { [InternalEmitterRequestType.Connect]: Transaction> | undefined>>; }; //#endregion export { ErrorResponseMessage, ExtractSuccessResponseMessage, InternalEmitterTransactions, RequestMessage, ResponseMessage, SuccessResponseMessage, Transaction, TransactionMethod, TransactionsHandlers, TransactionsMethods, UnknownErrorResponseMessage, UnknownMessage, UnknownRequestMessage, UnknownResponseMessage, UnknownSuccessResponseMessage, UnknownTransaction }; //# sourceMappingURL=types.d.ts.map