A2uiChoicePickerComponent

Renders single or multiple A2UI choices as chips or selection rows, with optional filtering.

import { A2uiChoicePickerComponent } from '@threadplane/chat';

Declaration

export declare class A2uiChoicePickerComponent  {
  readonly _bindings: import("@angular/core").InputSignal<Record<string, string>>;
  readonly bindings: import("@angular/core").InputSignal<Record<string, string>>;
  readonly childKeys: import("@angular/core").InputSignal<string[]>;
  readonly displayStyle: import("@angular/core").InputSignal<"checkbox" | "chips">;
  readonly errorText: import("@angular/core").InputSignal<string>;
  readonly filterable: import("@angular/core").InputSignal<boolean>;
  readonly label: import("@angular/core").InputSignal<string>;
  readonly loading: import("@angular/core").InputSignal<boolean>;
  onCheckChange(value: string, event: Event): void;
  onChipToggle(value: string): void;
  onFilterInput(event: Event): void;
  readonly options: import("@angular/core").InputSignal<ResolvedOption[]>;
  readonly spec: import("@angular/core").InputSignal<Spec | undefined>;
  readonly value: import("@angular/core").InputSignal<string | string[] | undefined>;
  readonly variant: import("@angular/core").InputSignal<"mutuallyExclusive" | "multipleSelection">;
}

Angular template API

Selector: a2ui-choice-picker

Inputs

_bindings
Record<string, string>
bindings
Record<string, string>
childKeys
string[]
displayStyle
"checkbox" | "chips"
errorText
string
filterable
boolean
label
string
loading
boolean
options
ResolvedOption[]
spec
Spec | undefined
value
string | string[] | undefined
variant
"mutuallyExclusive" | "multipleSelection"

Members

_bindings

readonly _bindings: import("@angular/core").InputSignal<Record<string, string>>;

bindings

readonly bindings: import("@angular/core").InputSignal<Record<string, string>>;

childKeys

readonly childKeys: import("@angular/core").InputSignal<string[]>;

displayStyle

v0.9 prop: render as 'checkbox' rows (default) or 'chips'.

readonly displayStyle: import("@angular/core").InputSignal<"checkbox" | "chips">;

errorText

Live validation message written by the surface's check gate (bound to /_a2uiChecks/<id>); empty when valid.

readonly errorText: import("@angular/core").InputSignal<string>;

filterable

v0.9 prop: when true, show a client-side option filter input.

readonly filterable: import("@angular/core").InputSignal<boolean>;

label

readonly label: import("@angular/core").InputSignal<string>;

loading

readonly loading: import("@angular/core").InputSignal<boolean>;

onCheckChange · overload 1

onCheckChange(value: string, event: Event): void;

Parameters

value · required
string
event · required
Event

Returns

void

onChipToggle · overload 1

onChipToggle(value: string): void;

Parameters

value · required
string

Returns

void

onFilterInput · overload 1

onFilterInput(event: Event): void;

Parameters

event · required
Event

Returns

void

options

Resolved options with plain string labels (surface-to-spec resolves DynamicString).

readonly options: import("@angular/core").InputSignal<ResolvedOption[]>;

spec

readonly spec: import("@angular/core").InputSignal<Spec | undefined>;

value

v0.9 prop: current selection (string[]). Normalized in valueArray because LLMs sometimes seed the data model with a scalar (e.g. "5") instead of an array (["5"]); we coerce so .includes() works either way.

readonly value: import("@angular/core").InputSignal<string | string[] | undefined>;

variant

v0.9 prop: 'mutuallyExclusive' (single-select, default) or 'multipleSelection'.

readonly variant: import("@angular/core").InputSignal<"mutuallyExclusive" | "multipleSelection">;