AssistantField: {
    before?: unknown;
    danger?: string;
    key: string;
    kind: AssistantFieldKind;
    label: string;
    linkGroup?: string;
    locked?: AssistantLock;
    options?: (string | number)[];
    permissions?: {
        missing: string[];
        valid: boolean;
    };
    value: unknown;
}

Type declaration

  • Optionalbefore?: unknown

    On an edit: the current value, for before -> after.

  • Optionaldanger?: string

    A reason to look twice - a ping or link in text, or a role with dangerous permissions. Never pre-tick the row.

  • key: string
  • kind: AssistantFieldKind
  • label: string
  • OptionallinkGroup?: string

    Fields in several rows with the same linkGroup hold the same channel or role: offer "change it everywhere".

  • Optionallocked?: AssistantLock
  • Optionaloptions?: (string | number)[]

    For enum / enum-list: the allowed values.

  • Optionalpermissions?: {
        missing: string[];
        valid: boolean;
    }

    For a channel: whether Noti can post there, and what it is missing.

    • missing: string[]
    • valid: boolean
  • value: unknown

    The proposed value, ids already resolved. null = the user must pick (an empty picker); Apply stays disabled until they do.