import type { ProxyBridgePartition, AuxPartitionBase, AuxPartitionRealtimeStrategy } from './AuxPartition';
import type { Bot, UpdatedBot, BotAction, StateUpdatedEvent } from '../bots';
import type { Observable } from 'rxjs';
import type { Action, CurrentVersion, RemoteActions, StatusUpdate } from '../common';
export declare class ProxyBridgePartitionImpl implements ProxyBridgePartition {
    get private(): boolean;
    get realtimeStrategy(): AuxPartitionRealtimeStrategy;
    get onBotsAdded(): Observable<any[]>;
    get onBotsRemoved(): Observable<string[]>;
    get onBotsUpdated(): Observable<UpdatedBot[]>;
    get onStateUpdated(): Observable<StateUpdatedEvent>;
    get onError(): Observable<any>;
    get onEvents(): Observable<Action[]>;
    get onStatusUpdated(): Observable<StatusUpdate>;
    get onVersionUpdated(): Observable<CurrentVersion>;
    get space(): string;
    set space(value: string);
    private _sub;
    private _partition;
    constructor(partition: AuxPartitionBase);
    applyEvents(events: BotAction[]): Promise<BotAction[]>;
    sendRemoteEvents(events: RemoteActions[]): Promise<void>;
    connect(): void;
    addListeners(onBotsAdded?: (bot: Bot[]) => void, onBotsRemoved?: (bot: string[]) => void, onBotsUpdated?: (bots: UpdatedBot[]) => void, onStateUpdated?: (update: StateUpdatedEvent) => void, onError?: (error: any) => void, onEvents?: (actions: Action[]) => void, onStatusUpdated?: (status: StatusUpdate) => void, onVersionUpdated?: (version: CurrentVersion) => void): Promise<void>;
    setSpace(space: string): Promise<void>;
    get closed(): boolean;
    unsubscribe(): void;
}
//# sourceMappingURL=ProxyBridgePartition.d.ts.map