# InputEventPointerButton

`import { InputEventPointerButton } from "destack:input/binding";`

Input pointer button event.

```ds title="InputEventPointerButton"
export struct InputEventPointerButton {
    kind: "pointerButton";
    header: InputEventHeader;
    action: InputEventAction;
    pointerId: uint64;
    pointerKind: PointerKind;
    isPrimary: boolean;
    button: int16;
    buttons: uint32;
    hostCode: uint32;
    hostValue: int64;
    x: float64;
    y: float64;
    space: CoordinateSpace;
    modifiers: ModifierState;
    contact: PointerContact;
    pen: PenState;
}
```

[language/library/src/input/binding/event.ds:212:245](https://github.com/destack-sh/destack/blob/main/language/library/src/input/binding/event.ds#L212-L245)

## Members

### `kind: "pointerButton"`

Event discriminator.

### `header: InputEventHeader`

Shared event header.

### `action: InputEventAction`

Event action.

### `pointerId: uint64`

Stable pointer identifier.

### `pointerKind: PointerKind`

Pointer kind.

### `isPrimary: boolean`

Whether this is the primary pointer for its kind.

### `button: int16`

Canonical button index when available.

### `buttons: uint32`

Canonical pressed-button bitset.

### `hostCode: uint32`

Host-native button code.

### `hostValue: int64`

Host-native button value.

### `x: float64`

Pointer x coordinate.

### `y: float64`

Pointer y coordinate.

### `space: CoordinateSpace`

Coordinate space.

### `modifiers: ModifierState`

Keyboard modifier and lock state.

### `contact: PointerContact`

Contact geometry when available.

### `pen: PenState`

Pen state when available.
