import { MaybePromise } from './utils'; export type DataState = { kind: 'loading'; } | { kind: 'loaded'; data: T; } | { kind: 'error'; error: Error; }; export declare const LOADING: unique symbol; export declare function useData(func: () => MaybePromise): DataState; export declare function mergeDataStates>(input: { [K in keyof T]: DataState; }): DataState;