UNPKG

overmind-vue

Version:
44 lines (43 loc) 2.01 kB
import { IConfiguration, Overmind, IContext } from 'overmind'; import { Ref, Component } from 'vue'; export declare const withOvermind: (instance: Overmind<IConfiguration>, Component: Component) => import("vue").DefineComponent<{}, void, {}, {}, {}, import("vue").ComponentOptionsMixin, import("vue").ComponentOptionsMixin, {}, string, import("vue").PublicProps, Readonly<{}> & Readonly<{}>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, true, {}, any>; export interface StateHook<Context extends IContext<{ state: {}; }>> { (): Ref<Context['state']>; <CB extends (state: Context['state']) => object>(cb: CB): CB extends (state: Context['state']) => infer O ? O extends object ? Ref<O> : never : never; } export declare function createStateHook<Context extends IContext<{ state: {}; }>>(): StateHook<Context>; export interface ActionsHook<Context extends IContext<{ actions: {}; }>> { (): Ref<Context['actions']>; <CB extends (actions: Context['actions']) => object>(cb: CB): CB extends (actions: Context['actions']) => infer O ? O extends object ? Ref<O> : never : never; } export declare function createActionsHook<Context extends IContext<{ actions: {}; }>>(): ActionsHook<Context>; export interface EffectsHook<Context extends IContext<{ effects: {}; }>> { (): Ref<Context['effects']>; <CB extends (effects: Context['effects']) => object>(cb: CB): CB extends (effects: Context['effects']) => infer O ? O extends object ? Ref<O> : never : never; } export declare function createEffectsHook<Context extends IContext<{ effects: {}; }>>(): EffectsHook<Context>; export declare function createReactionHook<Context extends IContext<{ state: {}; }>>(): () => Context["reaction"]; export declare function createHooks<Context extends IContext<{ state: {}; actions: {}; effects: {}; }>>(): { state: StateHook<Context>; actions: ActionsHook<Context>; effects: EffectsHook<Context>; reaction: () => Context["reaction"]; };