UNPKG

@teaui/core

Version:

A high-level terminal UI library for Node

33 lines (32 loc) 1.17 kB
import type { Viewport } from '../Viewport.js'; import { type Props as ContainerProps, Container } from '../Container.js'; import { Size } from '../geometry.js'; import { type MouseEvent, HotKey, KeyEvent } from '../events/index.js'; import type { View } from '../View.js'; import { type Alignment, type LegendItem } from '../types.js'; import { System } from '../System.js'; import { Color } from '../Color.js'; type Border = 'default' | 'arrows' | 'none'; export interface Props extends ContainerProps { title?: string; align?: Alignment; border?: Border; foreground?: Color; hotKey?: HotKey; onClick?: () => void; } export declare class Button extends Container { #private; constructor(props: Props); update(props: Props): void; childPalette(view: View): import("../Palette.js").Palette; naturalSize(available: Size): Size; get title(): string | undefined; set title(value: string | undefined); legendItems(): LegendItem[]; receiveMouse(event: MouseEvent, system: System): void; receiveKey(event: KeyEvent): void; render(viewport: Viewport): void; add(child: View, at?: number): void; } export {};