import { SyncMachineContext } from '.';

interface IConnectConf {
    username?: string;
    roomKey: string;
    roomId: string;
    isOwner: boolean;
    ownerEdSecret?: string;
    contractAddress?: string;
    ownerAddress?: string;
    isEns?: boolean;
    wsUrl: string;
    roomInfo?: {
        documentTitle: string;
        portalAddress: string;
        commentKey: string;
    };
}
export declare const useSyncMachine: (config: Partial<SyncMachineContext>) => {
    connect: (connectConfig: IConnectConf) => void;
    disconnect: () => void;
    isConnected: any;
    isReady: boolean;
    error: any;
    terminateSession: () => void;
    awareness: any;
    hasCollabContentInitialised: boolean;
    state: import('xstate').State<SyncMachineContext, {
        type: string;
        data: any;
    }, any, {
        value: any;
        context: SyncMachineContext;
    }, import('xstate').ResolveTypegenMeta<import('xstate').TypegenDisabled, {
        type: string;
        data: any;
    }, import('xstate').BaseActionObject, import('xstate').ServiceMap>>;
};
export {};
