UNPKG

@teaui/core

Version:

A high-level terminal UI library for Node

26 lines (25 loc) 1.05 kB
import type { Viewport } from '../Viewport.js'; import { type Props as ContainerProps, Container } from '../Container.js'; import { Size } from '../geometry.js'; import { System } from '../System.js'; import type { MouseEvent, MouseEventListenerName } from '../events/index.js'; export interface Props extends ContainerProps { mouse?: MouseEventListenerName | MouseEventListenerName[]; onMouse?: (event: MouseEvent, system: System) => void; } /** * A non-visual container that receives mouse events as a fallback. Children that * register for mouse events on the same pixels will take priority (since they * render after this view and override the registration). * * By default listens for all button and wheel events. Pass `mouse` to restrict * which events to listen for. */ export declare class Mouse extends Container { #private; constructor(props: Props); update(props: Props): void; naturalSize(available: Size): Size; receiveMouse(event: MouseEvent, system: System): void; render(viewport: Viewport): void; }