import { type Component, type Container, type PetMode, type PetSkinId, type TUI } from "@gajae-code/tui"; import type { CustomEditor } from "./custom-editor"; /** Re-exported from the tui skin registry so widget-relative imports stay valid. */ export type { PetMode, PetSkinId }; /** Reserve a right-side area beside the composer where the pixel pet is drawn. */ export declare class PetFramedEditor implements Component { #private; constructor(editor: CustomEditor); setReserve(columns: number): void; setTextArt(textArt: (() => string[]) | undefined): void; canFit(width: number): boolean; invalidate(): void; render(width: number): string[]; } /** The gajae pet pixel sprite and protocol-specific rendering lifecycle. */ export declare class GajaePetWidget { #private; constructor(options: { ui: TUI; editor: CustomEditor; editorContainer: Container; floorContainer: Container; isWorking: () => boolean; getComposerBottomOffset: () => number; syncManagedItermCursor: (row: number, column: number) => Promise; forcePixelProtocol?: "sixel" | "kitty"; autoFlexGapMs?: [number, number] | null; }); static pixelProtocol(): "sixel" | "kitty" | "iterm" | "text" | null; get mode(): PetMode; get isFlexing(): boolean; setMode(mode: PetMode): void; suspendItermCapability(): Promise; previewMode(mode: PetMode): void; commitPreviewMode(mode: PetMode): void; dispose(): void; disposeAsync(): Promise; remountComposer(): void; }