@twilio/flex-sdk
    Preparing search index...

    Main interface for interacting with the Flex SDK.

    interface Client {
        getWorker: () => Promise<Supervisor>;
        getWorkspace: () => Promise<Workspace>;
        roles: string[];
        token: string;
        addListener<E extends keyof ClientEventsType>(
            event: E,
            listener: ClientEventsType[E],
        ): this;
        destroy(): void;
        emit<E extends keyof ClientEventsType>(
            event: E,
            ...args: Parameters<ClientEventsType[E]>,
        ): boolean;
        eventNames(): (symbol | (keyof ClientEventsType))[];
        execute<T>(action: Action<T>): T;
        getMaxListeners(): number;
        listenerCount<E extends keyof ClientEventsType>(event: E): number;
        listeners<E extends keyof ClientEventsType>(
            event: E,
        ): ClientEventsType[E][];
        off<E extends keyof ClientEventsType>(
            event: E,
            listener: ClientEventsType[E],
        ): this;
        on<E extends keyof ClientEventsType>(
            event: E,
            listener: ClientEventsType[E],
        ): this;
        once<E extends keyof ClientEventsType>(
            event: E,
            listener: ClientEventsType[E],
        ): this;
        prependListener<E extends keyof ClientEventsType>(
            event: E,
            listener: ClientEventsType[E],
        ): this;
        prependOnceListener<E extends keyof ClientEventsType>(
            event: E,
            listener: ClientEventsType[E],
        ): this;
        rawListeners<E extends keyof ClientEventsType>(
            event: E,
        ): ClientEventsType[E][];
        removeAllListeners<E extends keyof ClientEventsType>(event?: E): this;
        removeListener<E extends keyof ClientEventsType>(
            event: E,
            listener: ClientEventsType[E],
        ): this;
        setMaxListeners(maxListeners: number): this;
        updateToken(token: string, refreshToken?: string): void;
    }

    Hierarchy

    Index

    Properties

    getWorker: () => Promise<Supervisor>

    Type Declaration

      • (): Promise<Supervisor>
      • Returns Promise<Supervisor>

        Worker object representing the current user. If the worker is already initialized, it will return immediately.

    getWorkspace: () => Promise<Workspace>

    Type Declaration

      • (): Promise<Workspace>
      • Returns Promise<Workspace>

        Workspace object. If the workspace is already initialized, it will return immediately.

    roles: string[]
    token: string

    Methods

    • Destroy the client, removing all event listeners

      Returns void

      import { createClient } from "@twilio/flex-sdk";

      const client = await createClient("SDK_TOKEN");

      await client.destroy();
    • Returns (symbol | (keyof ClientEventsType))[]

    • Returns number

    • Type Parameters

      Parameters

      • event: E

      Returns number

    • Type Parameters

      Parameters

      • Optionalevent: E

      Returns this

    • Parameters

      • maxListeners: number

      Returns this

    • This method updates the token for the session and propagates it to all connected services. After a successful update, the tokenUpdated event is emitted with both the new token and refresh token.

      Use this method when you need to manually refresh the token, such as when your application receives a new token from your backend token server.

      Parameters

      • token: string

        The new authentication token

      • OptionalrefreshToken: string

        The new refresh token (optional)

      Returns void

      Listen to token update events:

      import { createClient, ClientEvent } from "@twilio/flex-sdk";

      const client = await createClient("SDK_TOKEN");

      // Listen for token updates
      client.on(ClientEvent.TokenUpdated, (token, refreshToken) => {
      console.log("Token updated successfully");
      // Optionally store the new token
      });

      // Update the token
      client.updateToken("NEW_TOKEN", "NEW_REFRESH_TOKEN");