import { StreamBundle } from './streambundle';
import { ContextMatcher, SignalKServer } from './types';
import { NormalizedDelta } from '@signalk/server-api';
interface StringKeyed {
    [key: string]: any;
}
export default class DeltaCache {
    cache: StringKeyed;
    lastModifieds: StringKeyed;
    app: SignalKServer;
    defaults: any;
    sourceDeltas: StringKeyed;
    cachedContextPaths: {
        [context: string]: {
            [path: string]: string[];
        };
    };
    constructor(app: SignalKServer, streambundle: StreamBundle);
    getContextAndPathParts(msg: NormalizedDelta): string[];
    onValue(msg: NormalizedDelta): void;
    setSourceDelta(key: string, delta: any): void;
    deleteContext(contextKey: string): void;
    pruneContexts(seconds: number): void;
    buildFull(user: string, path: string[]): any;
    getSources(): any;
    buildFullFromDeltas(user: string, deltas: any[] | undefined, includeSources: boolean): any;
    getCachedDeltas(contextFilter: ContextMatcher, user?: string, key?: string): import("@signalk/server-api").Delta[];
}
export {};
//# sourceMappingURL=deltacache.d.ts.map