import type { AppManifest } from "@edenapp/types"; import type { Bounds, PlatformView } from "../platform/ports"; export type ViewMode = "floating" | "tiled"; export type ViewType = "app" | "overlay"; export declare const Z_LAYERS: { readonly APPS_MIN: 1; readonly APPS_MAX: 999; readonly OVERLAY_MIN: 1000; readonly OVERLAY_MAX: 9999; }; export interface ViewInfo { id: number; view: PlatformView; appId: string; manifest: AppManifest; bounds: Bounds; /** * Whether the user currently wants this view shown. * Capacity-based tiling may still keep it off-screen temporarily. */ requestedVisible: boolean; /** * Whether the view participates in the active presentation. * This may be false either because the user hid it or because tiling * temporarily removed it to satisfy layout capacity. A transient tile * expansion may cover a participating view with zero bounds without * changing this flag, which preserves the underlying layout for restore. */ visible: boolean; mode: ViewMode; viewType: ViewType; tileIndex?: number; zIndex?: number; launchArgs?: string[]; lastFocusedAt?: number; } export interface ViewCreationOptions { preloadScript: string; transparent?: boolean; backgroundThrottling?: boolean; additionalArguments?: string[]; } /** * Compare overlays from bottom to top. * Manifest priority defines the stack group; z-index controls recency within it. */ export declare function compareOverlayViews(a: ViewInfo, b: ViewInfo): number; //# sourceMappingURL=types.d.ts.map