Skip to content

TypeScript

Frasto ships TypeScript definitions and uses strict contracts for public component inputs.

interface SelectOption {
label: string;
value: string;
disabled?: boolean;
}

This describes what a select needs to render. It does not imply a table, ORM entity, or API response.

Table-like components should preserve row types where practical:

interface TableColumn<Row> {
key: keyof Row | string;
label: string;
sortable?: boolean;
}

Types are part of the public API. Renames, narrower unions, changed defaults, and newly required props need the same review as runtime behavior.

Read the TypeScript conventions →