import type { Application } from '../../../../../../packages/core/src/domain/generated/output.js';
import type { ChatState } from '../../../../../../packages/core/src/application/ports/output/services/interactive-session-service.interface.js';
import type { CloudDeployActionApi } from '../../../hooks/use-cloud-deploy-action.js';
import type { DeployActionState } from '../../../hooks/use-deploy-action.js';
import { type AppView } from './app-view-tabs.js';
/** Single source of truth for top-bar height. Both panes hang off this
 *  so nothing misaligns horizontally between left and right. */
export declare const TOP_BAR_HEIGHT_CLASS = "h-12";
export interface AppTopBarProps {
    application: Application;
    activeView: AppView;
    onViewChange: (view: AppView) => void;
    /** When true the agent is actively running — disable preview controls. */
    agentRunning: boolean;
    /** SSR-seeded chat state — used to initialize the session chip so it
     *  shows any already-captured sessionId/model before SSE updates
     *  arrive. Optional: the chip falls back to "—" when absent. */
    initialChatState?: ChatState;
    /** Shared dev-server deploy state (hoisted in ApplicationPage so the
     *  top-bar Preview button and the right-pane Web iframe use a single
     *  polling loop). */
    deploy: DeployActionState;
    /** Cloud deploy action state (spec 089). */
    cloudDeploy: CloudDeployActionApi;
}
export declare function AppTopBar({ application, activeView, onViewChange, agentRunning, initialChatState, deploy, cloudDeploy, }: AppTopBarProps): import("react/jsx-runtime").JSX.Element;
//# sourceMappingURL=app-top-bar.d.ts.map