mst-effect
Version:
Designed to be used with MobX-State-Tree to create asynchronous actions using RxJS.
9 lines • 970 B
TypeScript
import type { IAnyModelType, Instance } from 'mobx-state-tree';
export declare type IsAny<T> = 0 extends 1 & T ? true : false;
export declare type IsNever<T> = [T] extends [never] ? true : false;
export declare type IsEmptyPayload<P> = IsNever<P> extends true ? false : P extends void ? true : IsAny<P> extends true ? false : unknown extends P ? true : false;
export declare type IsOptionalPayload<Payload> = undefined extends Payload ? true : void extends Payload ? true : false;
export declare type NormalizeOptionalPayload<Payload> = IsOptionalPayload<Payload> extends true ? Exclude<Payload, void> | undefined : Payload;
export declare type PayloadFunc<Payload, ReturnType> = IsEmptyPayload<Payload> extends true ? () => ReturnType : IsOptionalPayload<Payload> extends true ? (payload?: NormalizeOptionalPayload<Payload>) => ReturnType : (payload: Payload) => ReturnType;
export declare type AnyInstance = Instance<IAnyModelType>;
//# sourceMappingURL=types.d.ts.map