@kkdev92/vscode-ext-kit - v4.1.1
    Preparing search index...

    Interface PickOptions<T>

    Options accepted by pickOne and pickMany.

    interface PickOptions<T extends QuickPickItemLike = QuickPickItemLike> {
        buttons?: readonly QuickInputButtonLike[];
        ignoreFocusOut?: boolean;
        matchOnDescription?: boolean;
        matchOnDetail?: boolean;
        onDidSelectItem?: (item: T) => unknown;
        onTriggerButton?: (
            button: QuickInputButtonLike,
            picker: QuickPickLike<T>,
        ) => void;
        onTriggerItemButton?: (
            button: QuickInputButtonLike,
            item: T,
            picker: QuickPickLike<T>,
        ) => void;
        placeHolder?: string;
        prompt?: string;
        signal?: AbortSignal;
        title?: string;
    }

    Type Parameters

    Index
    buttons?: readonly QuickInputButtonLike[]

    Buttons shown in the picker's title bar. Build them with toPickButton and handle presses with onTriggerButton.

    ignoreFocusOut?: boolean

    Keep the picker open when focus moves elsewhere (default: false).

    matchOnDescription?: boolean

    Include item descriptions when filtering (default: false).

    matchOnDetail?: boolean

    Include item details when filtering (default: false).

    onDidSelectItem?: (item: T) => unknown

    Called whenever the highlighted item changes. Runs inside the platform event callback: handle expected errors locally, because a thrown exception is not converted into a rejected pick promise.

    onTriggerButton?: (
        button: QuickInputButtonLike,
        picker: QuickPickLike<T>,
    ) => void

    Called when one of buttons is pressed. The picker stays open — call picker.hide() to dismiss it, which resolves the pick with undefined. Compare button by identity against the one you built. Handle expected errors locally; callback exceptions propagate from the platform event rather than settling the pick promise.

    onTriggerItemButton?: (
        button: QuickInputButtonLike,
        item: T,
        picker: QuickPickLike<T>,
    ) => void

    Called when an inline button on an item is pressed. The picker stays open, so a row-level action can update the list in place. Callback exceptions follow the same platform-event behavior as PickOptions.onTriggerButton.

    const remove = toPickButton('trash', { tooltip: 'Delete' });
    const chosen = await pickOne(ui, keys.map((key) =>
    ({ ...toPickItem(key, { label: key }), buttons: [remove] })), {
    onTriggerItemButton: (_button, item, picker) => {
    picker.items = picker.items.filter((candidate) => candidate !== item);
    },
    });
    placeHolder?: string

    Placeholder text shown in the empty filter box.

    prompt?: string

    Instructional text shown below the filter box and above the items.

    signal?: AbortSignal

    Cancels the pick: aborting hides the picker and resolves undefined. Pass an operation's context.signal so an open picker never outlives the operation that showed it.

    title?: string

    Title shown at the top of the picker.