import { Subject } from "../utils/Subject";
type State = {
    loading: boolean;
    data: any;
    error: any;
    version: number;
};
export declare class QueryResource {
    store: Subject<Map<string, State>>;
    staleVariants: Set<string>;
    lastFetchRecord: Map<string, number>;
    key: string;
    constructor(key: string, initialState: Record<string, any>);
    getVariant(variantKey: string): State;
    mutate(variantKey: string, fn?: (data: any) => any): void;
    refetch(variantKey: string): void;
    private resolveVariant;
}
export {};
//# sourceMappingURL=QueryResource.d.ts.map