import { Need } from '../../API';
import { Artifact } from '../../API';
import { ApolloCacheService } from '../../apollo-cache-services';
import { BaseModel, IApolloService } from '../../apollo-cache-services/types';
export declare const NEEDS_AND_ARTIFACTS_CACHE_KEY = "NeedsAndArtifacts";
export declare class NeedsAndArtifactsCacheService extends ApolloCacheService {
    protected isEqualVariables(baseVariables: IApolloService.IListVariables, itemVariables: IApolloService.IListVariables): boolean;
    serializeModel<T extends Partial<BaseModel>>(model: T): T;
    getFilterFromOldValue(model: Need | Artifact): {
        isResolved: boolean;
        inboxID: string;
        organizationID: string;
    } | {
        isResolved: boolean;
        isProcessed: boolean;
        inboxID: string;
        organizationID: string;
    };
    moveUpdatedModel<T extends Partial<BaseModel>>(key: keyof IApolloService.ICache, updatedModel: T, options?: Record<string, any>, previousModel?: T): void | import("@apollo/client").Reference;
    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;
    isMatchToQueryVariables(model: Record<string, any>, variables: IApolloService.IListVariables): any;
}
