export interface IConnectionDefaults { [name: string]: any; } export interface IConnectionValue { [name: string]: any; } export interface IConnectionError { message?: string; thrown?: Error; } export interface IConnectionOptions { handler: (value: E) => Promise; defaults: E; } export interface IConnectionCallbacks { data?: (data: T) => any; error?: (error: IConnectionError) => any; loading?: (loading: boolean) => any; } export declare class Connection { private handler; private defaults; private previous; private dataDispatcher; private errorDispatcher; private loadingDispatcher; constructor({ handler, defaults }: IConnectionOptions); execute(value?: Partial): Promise; refresh(): Promise; listen(executors: IConnectionCallbacks): () => void; perform(value: E): Promise; } export declare const createConnection: ({ handler, ...args }: { handler: (value: E) => Promise; }) => (defaults: E) => Connection;