import { ApolloHelpersService } from './apollo-helpers-service';
import { IApolloService } from './types/apollo-service';
import { BaseModel } from './types/common';
export declare class ApolloCacheService extends ApolloHelpersService {
    cacheKeys: Record<string, string>;
    private cache;
    setCache(key: keyof IApolloService.ICache, data: IApolloService.ICacheData): void;
    getCache(key: keyof IApolloService.ICache): IApolloService.ICacheData[];
    protected logger(type: 'add' | 'delete', data: IApolloService.ICacheData & any): void;
    protected isEqualVariables(baseVariables: IApolloService.IListVariables, itemVariables: IApolloService.IListVariables): boolean;
    private isSameQuery;
    moveUpdatedModel<T extends Partial<BaseModel>>(key: keyof IApolloService.ICache, updatedModel: T, options?: IApolloService.MoveModelOptions): void;
    addModel<T extends Partial<BaseModel>>(key: keyof IApolloService.ICache, model: T, currentQueryName?: string): void;
    deleteModel<T extends Partial<BaseModel>>(key: keyof IApolloService.ICache, model: T, currentQueryName?: string): void;
    deleteApolloCache(key: keyof IApolloService.ICache, fieldName?: string): void;
}
