import { LitElement } from 'lit';
import '../../components/icon-button/icon-button.js';
import '../../icons/icon-close-google.js';
import '../poi-object-vessel/poi-object-vessel.js';
/**
 * Layout variants for POI Card Header.
 * - `tag`: Minimal numbered badge/pill for compact list views.
 * - `condensed`: Single-line with index badge, title, and optional source.
 * - `regular`: Single-line with index badge, leading icon slot, title, and source.
 * - `detailed`: Full header with POI icon, title, description, source, timestamp, and close button.
 */
export declare enum ObcPoiCardHeaderVariant {
    Tag = "tag",
    Condensed = "condensed",
    Regular = "regular",
    Detailed = "detailed"
}
/**
 * `<obc-poi-card-header>` - Header block for `obc-poi-card` with tag, condensed, regular, and detailed layouts.
 *
 * ## Overview
 * Use this component to render card identity metadata such as index, title, source, and optional detail rows.
 * Keywords/synonyms: card header, title bar, metadata header, marker header.
 *
 * ## Features/Variants
 * - `variant` (default `regular`):
 *   - `tag`: index badge only.
 *   - `condensed`: index + title + optional source.
 *   - `regular`: condensed layout with optional `leading-icon` slot.
 *   - `detailed`: POI icon, title, description, source, timestamp, and optional close button.
 * - `index` (default `"1"`): badge text.
 * - `cardTitle`, `description`, `source`, `timestamp`: textual metadata fields.
 * - `hasLeadingIcon` (default `false`): enables icon region for regular variant.
 * - `hasCloseButton` (default `false`): renders close action in detailed variant.
 *
 * ## Usage Guidelines
 * - Choose the variant based on available space and metadata density.
 * - Use `hasCloseButton` only when a parent can handle dismiss behavior.
 * - Keep `source` and `timestamp` short to avoid header crowding.
 *
 * ## Slots/Content
 * - `leading-icon`: Optional icon for the regular variant.
 * - `poi-icon`: Optional icon for the detailed variant POI target.
 *
 * ## Events
 * - `close-click`: Fired when the close button is pressed.
 *
 * ## Best Practices
 * - Keep `index` stable and human-readable.
 * - Use `tag` or `condensed` when the header is used in dense lists.
 *
 * ## Example
 * ```html
 * <obc-poi-card-header
 *   variant="detailed"
 *   index="1"
 *   cardTitle="Target"
 *   description="Tracked object"
 *   source="AIS"
 *   timestamp="2 min ago"
 *   hasCloseButton
 * >
 *   <obi-placeholder slot="poi-icon"></obi-placeholder>
 * </obc-poi-card-header>
 * ```
 *
 * @slot leading-icon - Optional icon for the regular variant.
 * @slot poi-icon - Optional icon for the detailed variant POI target.
 * @fires close-click {CustomEvent<void>} Fired when the close button is pressed.
 */
export declare class ObcPoiCardHeader extends LitElement {
    variant: ObcPoiCardHeaderVariant;
    index: string;
    cardTitle: string;
    /** Shown only in detailed variant. */
    description: string;
    /** Source badge text (e.g., "AIS", "RADAR"). Hidden when empty. */
    source: string;
    /** Shown only in detailed variant. */
    timestamp: string;
    /** Enables the leading-icon slot (regular variant only). */
    hasLeadingIcon: boolean;
    /** Enables the close button (detailed variant only). */
    hasCloseButton: boolean;
    private get hasSource();
    private handleCloseClick;
    private renderIndexBadge;
    private renderSourceBadge;
    private renderTagVariant;
    private renderCondensedVariant;
    private renderRegularVariant;
    private renderDetailedVariant;
    render(): import('lit-html').TemplateResult<1>;
    static styles: import('lit').CSSResult;
}
declare global {
    interface HTMLElementTagNameMap {
        'obc-poi-card-header': ObcPoiCardHeader;
    }
}
//# sourceMappingURL=poi-card-header.d.ts.map