import { SessionStoreUpdate } from '../internal';
import { IHMSSessionStoreActions } from '../schema';
import { HMSSdk } from '../sdk';
export declare class HMSSessionStore<T extends Record<string, any>> implements IHMSSessionStoreActions<T> {
    private sdk;
    private setLocally;
    constructor(sdk: HMSSdk, setLocally: (updates: SessionStoreUpdate | SessionStoreUpdate[], actionName?: string) => void);
    private get sdkSessionStore();
    set<K extends keyof T>(key: K, value?: T[K]): Promise<void>;
    observe(keys: keyof T | Array<keyof T>): Promise<void>;
    unobserve(keys: keyof T | Array<keyof T>): Promise<void>;
}
