UNPKG

origami-zen

Version:

Collection of reusable web components. Built for Origami CMS.

59 lines (58 loc) 1.62 kB
/// <reference types="seamless-immutable" /> import { AnyAction } from 'redux'; import immutable, { ImmutableArray, ImmutableObject } from 'seamless-immutable'; export declare type ArrAny = ImmutableArray<any>; export declare type ImmutableResourceState = ImmutableObject<ResourceState>; export interface ResourceState { loadedInitial: boolean; _loading: { all: boolean; single: boolean; post: boolean; edit: boolean; }; _errors: { get: boolean | string; post: boolean | string; edit: boolean | string; delete: boolean | string; }; } export interface State extends ImmutableResourceState { [resource: string]: any; } export interface Resource { [key: string]: any; } export declare type ResourceStateMixin<S> = S & ResourceState; declare const _default: (resource: string, func?: Function, key?: string) => (state: immutable.ImmutableObject<{ [x: string]: boolean | immutable.ImmutableArray<any> | { all: boolean; single: boolean; post: boolean; edit: boolean; get?: undefined; delete?: undefined; } | { get: boolean; post: boolean; edit: boolean; delete: boolean; all?: undefined; single?: undefined; }; loadedInitial: boolean; _loading: { all: boolean; single: boolean; post: boolean; edit: boolean; }; _errors: { get: boolean; post: boolean; edit: boolean; delete: boolean; }; }>, action: AnyAction) => any; export default _default;