UNPKG

polyv-live-cli

Version:

CLI tool for managing PolyV live streaming services.

60 lines 2.23 kB
import { EventEmitter } from 'events'; import { LayoutConfig, ComponentLayout } from '../types/monitoring'; export interface LayoutManagerOptions { layoutsDir?: string; autoSave?: boolean; enableResponsive?: boolean; } export interface TerminalSize { width: number; height: number; } export interface LayoutMetrics { totalComponents: number; activeComponents: number; gridUtilization: number; overlappingComponents: ComponentLayout[]; } export declare class LayoutManager extends EventEmitter { private layouts; private currentLayoutId; private customLayouts; private layoutsDir; private options; private currentTerminalSize; constructor(options?: LayoutManagerOptions); getAvailableLayouts(): string[]; getLayout(layoutId: string): LayoutConfig | undefined; getCurrentLayout(): LayoutConfig; getCurrentLayoutId(): string; applyLayout(layoutId: string): Promise<void>; createCustomLayout(layout: LayoutConfig): Promise<void>; updateCustomLayout(layoutId: string, updates: Partial<LayoutConfig>): Promise<void>; deleteCustomLayout(layoutId: string): Promise<void>; updateTerminalSize(size: TerminalSize): Promise<void>; getLayoutMetrics(layoutId?: string): LayoutMetrics; findOverlappingComponents(layout: LayoutConfig): ComponentLayout[]; optimizeLayout(layout: LayoutConfig): LayoutConfig; getCustomLayouts(): LayoutConfig[]; getBuiltInLayouts(): LayoutConfig[]; exportLayout(layoutId: string, filePath: string): Promise<void>; importLayout(filePath: string): Promise<LayoutConfig>; private ensureLayoutsDirectory; private loadBuiltInLayouts; private loadCustomLayouts; private saveCustomLayout; private applyLayoutToInterface; private applyResponsiveAdjustments; private componentsOverlap; private calculateGridUtilization; private resolveOverlaps; private repositionComponent; private packComponents; private createDefaultLayout; private createCompactLayout; private createWidescreenLayout; private createSingleColumnLayout; destroy(): void; } export declare const layoutManager: LayoutManager; //# sourceMappingURL=layout-manager.d.ts.map