import { FC, ReactNode } from 'react';
/**
* Footer Item Interface
*/
export interface FooterItem {
/** Unique identifier */
id: string;
/** Display label */
label: string;
/** Icon (ReactNode or SVG path) */
icon?: ReactNode;
/** Click handler */
onClick?: () => void;
/** Item type */
type?: "status" | "action" | "info";
/** Badge or indicator text */
badge?: string;
}
/**
* Footer Sections Interface
*
* Three-section footer layout:
* - Left: Context info + status items
* - Center: Contextual actions
* - Right: Info/metadata
*/
export interface FooterSections {
left: FooterItem[];
center: FooterItem[];
right: FooterItem[];
}
/**
* FooterBar Props Interface
*/
export interface FooterBarProps {
/** Footer sections with items */
sections: FooterSections;
/** Context information to display in left section */
context?: {
workspace?: string;
project?: string;
[key: string]: string | undefined;
};
/** Version info to display in right section */
version?: string;
/** Additional content to render in footer */
children?: ReactNode;
/**
* Hide the footer entirely inside installed apps (Capacitor native,
* Electron, standalone PWA) — footers are web chrome. Default `true`.
*/
hideOnInstalledApp?: boolean;
}
/**
* FooterBar Component
*
* Generic footer bar for app shells. Pure presentation component
* that accepts all data via props.
*
* Features:
* - Three-section layout (left/center/right)
* - Context information display
* - Status indicators
* - Contextual actions
* - Version/build info
* - Badge support
*
* Uses semantic tokens for styling, which must be provided by the shell.
*
* @example
* ```tsx
*
* ```
*/
export declare const FooterBar: FC;
//# sourceMappingURL=FooterBar.d.ts.map