typograph-editor-documentation
    Preparing search index...

    Interface presence_provider

    The part of HocuspocusProvider this uses, so a test can stand in for it.

    interface presence_provider {
        awareness: {
            clientID: number;
            meta?: Map<number, { clock: number }>;
            getLocalState?(): Record<string, unknown>;
            getStates(): Map<number, any>;
            on(
                event: "change",
                listener: (
                    changes?: { added: number[]; removed: number[]; updated: number[] },
                    origin?: unknown,
                ) => void,
            ): void;
            on(
                event: "update",
                listener: (changes: { removed: number[] }, origin: unknown) => void,
            ): void;
            setLocalState?(state: Record<string, unknown>): void;
            setLocalStateField(field: string, value: unknown): void;
        };
        configuration?: { websocketProvider?: { connect(): unknown } };
        document?: Doc;
        destroy(): void;
        on(event: "status", listener: (e: { status: string }) => void): void;
        on(
            event: "authenticationFailed",
            listener: (e?: { reason?: string }) => void,
        ): void;
        on(event: "synced", listener: () => void): void;
        on(
            event: "authenticated",
            listener: (e?: { scope?: string }) => void,
        ): void;
    }
    Index
    awareness: {
        clientID: number;
        meta?: Map<number, { clock: number }>;
        getLocalState?(): Record<string, unknown>;
        getStates(): Map<number, any>;
        on(
            event: "change",
            listener: (
                changes?: { added: number[]; removed: number[]; updated: number[] },
                origin?: unknown,
            ) => void,
        ): void;
        on(
            event: "update",
            listener: (changes: { removed: number[] }, origin: unknown) => void,
        ): void;
        setLocalState?(state: Record<string, unknown>): void;
        setLocalStateField(field: string, value: unknown): void;
    }

    Type Declaration

    • clientID: number
    • Optionalmeta?: Map<number, { clock: number }>

      y-protocols' clock per client: the state with a higher one wins.

    • getLocalState?: function
      • y-protocols' own; several fields set at once go out as one message.

        Returns Record<string, unknown>

    • getStates: function
    • on: function
      • Parameters

        • event: "change"
        • listener: (
              changes?: { added: number[]; removed: number[]; updated: number[] },
              origin?: unknown,
          ) => void

        Returns void

      • Parameters

        • event: "update"
        • listener: (changes: { removed: number[] }, origin: unknown) => void

        Returns void

    • setLocalState?: function
      • Parameters

        • state: Record<string, unknown>

        Returns void

    • setLocalStateField: function
      • Parameters

        • field: string
        • value: unknown

        Returns void

    configuration?: { websocketProvider?: { connect(): unknown } }

    HocuspocusProvider's own configuration, for its socket after destroy() (stop()).

    document?: Doc

    The shared document; edited together only with edit_together.

    • Parameters

      • event: "status"
      • listener: (e: { status: string }) => void

      Returns void

    • Parameters

      • event: "authenticationFailed"
      • listener: (e?: { reason?: string }) => void

      Returns void

    • Parameters

      • event: "synced"
      • listener: () => void

      Returns void

    • Parameters

      • event: "authenticated"
      • listener: (e?: { scope?: string }) => void

      Returns void