# A2uiButtonComponent

Package: `@threadplane/chat` · 0.3.4

Reference: /docs/api/chat/A2uiButtonComponent

```typescript
import { A2uiButtonComponent } from '@threadplane/chat';
```

## A2uiButtonComponent

Renders A2UI child content as a styled button and forwards clicks to the render event handler.

```typescript
export declare class A2uiButtonComponent  {
  readonly bindings: import("@angular/core").InputSignal<Record<string, string>>;
  readonly childKeys: import("@angular/core").InputSignal<string[]>;
  readonly disabled: import("@angular/core").InputSignal<boolean>;
  readonly emit: import("@angular/core").InputSignal<(event: string) => void>;
  handleClick(): void;
  readonly loading: import("@angular/core").InputSignal<boolean>;
  readonly spec: import("@angular/core").InputSignal<Spec>;
  readonly variant: import("@angular/core").InputSignal<ButtonVariant>;
}
```

**Angular selector:** `a2ui-button`

- Input `bindings`: `Record<string, string>`

- Input `childKeys`: `string[]`

- Input `disabled`: `boolean`

- Input `emit`: `(event: string) => void`

- Input `loading`: `boolean`

- Input `spec` (required): `Spec`

- Input `variant`: `ButtonVariant`

### bindings

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

### childKeys

v0.9: child Text component is rendered inside the button via childKeys.

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

### disabled

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

### emit

```typescript
readonly emit: import("@angular/core").InputSignal<(event: string) => void>;
```

### handleClick · overload 1

```typescript
handleClick(): void;
```

### loading

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

### spec

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

### variant

v0.9 prop: visual style (default 'default').

```typescript
readonly variant: import("@angular/core").InputSignal<ButtonVariant>;
```