export interface ResourcePending { status: 'pending'; value?: undefined; } export interface ResourceFailure { status: 'failure'; value: any; } export interface ResourceSuccess { status: 'success'; value: T; } export declare type Resource = ResourcePending | ResourceFailure | ResourceSuccess; export interface ResourceOptions { initialValue?: T; timeoutMS?: number; } export default function resource(fetcher: () => Promise, options?: ResourceOptions): Resource;