interface ISet { (values: T): void; } interface IParams { defaultValue?: T; manual?: boolean; serviceToSet: (values: any) => Promise; serviceToGet: () => Promise; } declare type IResult = [ data: T, set: ISet, rest: { loading: boolean; loadingSet: boolean; refresh: () => void; } ]; declare function useServerCacheState(options: IParams): IResult; export default useServerCacheState;