SoulFire TypeScript SDK 2.10.3
    Preparing search index...

    Type Alias ServerDialog

    ServerDialog: Message<"soulfire.v1.ServerDialog"> & {
        action?: DialogButton;
        actions: DialogButton[];
        afterAction: DialogAfterAction;
        body: DialogBodyElement[];
        buttonWidth: number;
        canCloseWithEscape: boolean;
        columns: number;
        exitAction?: DialogButton;
        externalTitle?: string;
        id: string;
        inputs: DialogInput[];
        no?: DialogButton;
        pause: boolean;
        title: string;
        type: DialogType;
        yes?: DialogButton;
    }

    Complete server dialog definition. Contains all information needed to render and interact with a dialog.

    Type Declaration

    • Optionalaction?: DialogButton

      For NOTICE type: the single action button.

      from field: optional soulfire.v1.DialogButton action = 10;

    • actions: DialogButton[]

      For MULTI_ACTION type: list of action buttons.

      from field: repeated soulfire.v1.DialogButton actions = 13;

    • afterAction: DialogAfterAction

      Behavior after an action button is clicked.

      from field: soulfire.v1.DialogAfterAction after_action = 9;

    • body: DialogBodyElement[]

      Body elements (text and items) displayed in the dialog.

      from field: repeated soulfire.v1.DialogBodyElement body = 5;

    • buttonWidth: number

      For SERVER_LINKS and DIALOG_LIST: button width. Default: 150.

      from field: int32 button_width = 16;

    • canCloseWithEscape: boolean

      Whether ESC key can close the dialog. Default: true.

      from field: bool can_close_with_escape = 7;

    • columns: number

      For MULTI_ACTION and DIALOG_LIST: number of button columns. Default: 2.

      from field: int32 columns = 14;

    • OptionalexitAction?: DialogButton

      For MULTI_ACTION, SERVER_LINKS, DIALOG_LIST: exit/close button.

      from field: optional soulfire.v1.DialogButton exit_action = 15;

    • OptionalexternalTitle?: string

      Button label when shown as an external/minimized button.

      from field: optional string external_title = 4;

    • id: string

      Dialog identifier from the server. Format: namespaced identifier (e.g., "myserver:welcome_dialog").

      from field: string id = 1;

    • inputs: DialogInput[]

      Input controls for gathering user data.

      from field: repeated soulfire.v1.DialogInput inputs = 6;

    • Optionalno?: DialogButton

      For CONFIRMATION type: the "no" button.

      from field: optional soulfire.v1.DialogButton no = 12;

    • pause: boolean

      Whether to pause the game in singleplayer. Default: true. No effect in multiplayer.

      from field: bool pause = 8;

    • title: string

      Dialog title (may be a JSON text component).

      from field: string title = 3;

    • type: DialogType

      The type of dialog, determining overall structure.

      from field: soulfire.v1.DialogType type = 2;

    • Optionalyes?: DialogButton

      For CONFIRMATION type: the "yes" button.

      from field: optional soulfire.v1.DialogButton yes = 11;

    from message soulfire.v1.ServerDialog