/// export interface ActionPerformResponse { completedAt?: number; initiatedAt?: number; success?: any; error?: any; } export interface ModelConstructorOptions { id?: any; entities?: any; entityType?: string; value?: any; meta?: any; schema?: any; denormalize?: any; formatter?: (value: any | undefined, options: ModelConstructorOptions) => any; arrayEntrySchema?: any; } export interface FormatterOptions { id?: any; actionId?: any; entityType: string; } export declare type Formatter = (data: any, options: FormatterOptions) => FormatterResponse; export interface FetchActionOptions { id: any; url: string; params?: any; formatter?(payload: any, options: FormatterOptions): any; schema?: any; replaceModel?: boolean; bubbleUp?: boolean; successAction?: any; errorAction?: any; clearAfter?: boolean; } export interface ActionOptions { id: any; actionId: any; url: string; params?: object; formatter?(payload: any, options: FormatterOptions): any; schema?: any; replaceModel?: boolean; bubbleUp?: boolean; successAction?: any; errorAction?: any; clearAfter?: boolean; } export interface ActionCreatorOptions { actionPrefix: string; entityType: string; normalize?: boolean; bubbleUp?: boolean; debug?: boolean; } export interface ActionCreator { createModelDataAction(id: any, data?: any): any; createLocalPutAction(id: any, data: any): any; createLocalDeleteAction(id: any): any; createFetchAction(options: FetchActionOptions): any; createGetAction(options: ActionOptions): any; createPatchction(options: ActionOptions): any; createPostAction(options: ActionOptions): any; createPutAction(options: ActionOptions): any; createDeleteAction(options: ActionOptions): any; } export interface BeforeAfterReduceParam { id: any; action?: string; entities: any; result?: any; data?: any; state: any; } export interface ReducerOptions { entityType: string; actionPrefix: string; beforeReduce?(options: BeforeAfterReduceParam, meta?: any): any; afterReduce?(options: BeforeAfterReduceParam, meta?: any): any; bubbleUp?: boolean; debug?: any; } export interface ModelProviderModelOptions { id: any; entityType: string; propName?: any; idPropName?: any; fetchProp?: any; modelClass?: any; fetchOptions?: any; forceFetch?: any; arrayEntrySchema?: any; denormalize?: any; } export interface ModelProviderOptions { debug?: boolean; model?: ModelProviderModelOptions; models?: Array; entitiesProp?: string; onIdChange?(newId: any, prevId: any, props: any): any; } export declare type ModelProviderResponse = (component: any) => JSX.Element; export interface FormatterResponse { result?: any; response?: any; entities?: object; bubbleUp?: boolean; actionId?: any; id?: any; data?: object; } export interface ModelCacheOptions { id: any; entityType: any; modelClass?: any; entities?: any; }