/**
 * Open a native window for development
 * Uses the desktop package to create a webview window
 *
 * @param port - The port the dev server is running on
 * @param config - Optional configuration overrides
 * @returns true if window opened successfully, false otherwise
 */
export declare function openNativeWindow(port: number, config?: NativeWindowConfig): Promise<boolean>;
/**
 * Check if native window support is available
 * Returns true if the desktop package can be used
 */
export declare function isNativeWindowSupported(): Promise<boolean>;
/**
 * Extract sidebar configuration from template content
 * Looks for:
 * 1. <Sidebar variant="tahoe"> component with props
 * 2. @nativeSidebar directive
 * 3. <script native-sidebar> (deprecated)
 */
export declare function extractSidebarConfig(templateContent: string): SidebarConfig | undefined;
/**
 * Default configuration for the native window
 */
export declare const DEFAULT_NATIVE_WINDOW_CONFIG: Required<Omit<NativeWindowConfig, 'sidebarConfig'>> & { sidebarConfig?: SidebarConfig };
/**
 * Native Window Module
 * Handles opening development windows using the desktop package.
 *
 * All `@stacksjs/desktop` imports are lazy: the package is only loaded when
 * the user actually asks for a native window (`--native`). This keeps the
 * CLI runnable even if `@stacksjs/desktop` isn't built or installed —
 * previously a failed import crashed every `stx dev` invocation with
 * "Cannot find module '@stacksjs/desktop'".
 */
// Local type-only mirror of the one exported by @stacksjs/desktop.
// Kept minimal — stx only reads these fields. If the real type grows, the
// resolved value is still passed through verbatim to openDevWindow().
export declare interface SidebarConfig {
  sections: Array<{
    title?: string
    items?: Array<{ id: string, label: string, icon?: string, badge?: string | number }>
  }>
}
/**
 * Configuration for the native development window
 */
export declare interface NativeWindowConfig {
  title?: string
  width?: number
  height?: number
  darkMode?: boolean
  hotReload?: boolean
  nativeSidebar?: boolean
  sidebarWidth?: number
  sidebarConfig?: SidebarConfig
}
