declare class SharedObject {
    private readonly offset;
    private readonly queue;
    private readonly lengthIdx;
    private readonly versionIdx;
    private buffer;
    private view;
    private maxSize;
    private atomicView;
    private isProcessing;
    constructor(initialSize?: number, maxSize?: number);
    setBuffer(buffer: SharedArrayBuffer): void;
    getBuffer(): SharedArrayBuffer;
    getVersion(): number;
    waitStore(obj: any, version: number, timeout?: number): void;
    waitVersion(version: number, timeout?: number): "ok" | "not-equal" | "timed-out";
    private processQueue;
    store(obj: any): void;
    load(resetVersion?: boolean): any;
    private ensureCapacity;
}
export default SharedObject;
