import { QueryId, QuerySetModification, Authenticate, QueryJournal, Transition } from "./protocol.js";
import { QueryToken } from "./udf_path_utils.js";
export declare class LocalSyncState {
    private nextQueryId;
    private querySetVersion;
    private readonly querySet;
    private readonly queryIdToToken;
    private identityVersion;
    private auth?;
    constructor();
    subscribe(udfPath: string, args: any[], journal?: QueryJournal): {
        queryToken: QueryToken;
        modification: QuerySetModification | null;
        unsubscribe: () => QuerySetModification | null;
    };
    saveQueryJournals(transition: Transition): void;
    queryId(udfPath: string, args: any[]): QueryId | null;
    setAuth(value: string): Authenticate;
    setAdminAuth(value: string): Authenticate;
    clearAuth(): Authenticate;
    hasAuth(): boolean;
    isNewAuth(value: string): boolean;
    queryPath(queryId: QueryId): string | null;
    queryArgs(queryId: QueryId): any[] | null;
    queryToken(queryId: QueryId): string | null;
    queryJournal(queryToken: QueryToken): QueryJournal | undefined;
    restart(): [QuerySetModification, Authenticate?];
    private removeSubscriber;
}
//# sourceMappingURL=local_state.d.ts.map