import { LitElement } from 'lit';
export declare const OBC_POI_SELECTION_FRAME_MIN_CUSTOM_SIZE_PX = 28;
export declare enum ObcPoiSelectionFrameType {
    Indicator = "indicator",
    Button = "button",
    Enhanced = "enhanced"
}
export declare enum ObcPoiSelectionFrameState {
    Regular = "regular",
    Alert = "alert",
    None = "none",
    Flat = "flat"
}
/**
 * `<obc-poi-selection-frame>` - Corner-frame highlight component for selected marker targets.
 *
 * ## Overview
 * Use this component to draw a non-interactive selection outline around a marker, button, or indicator.
 * Keywords/synonyms: selection frame, focus frame, highlight frame, corner frame.
 *
 * ## Features/Variants
 * - `type` (default `indicator`): `indicator`, `button`, or `enhanced`.
 * - `state` (default `regular`): `regular`, `alert`, `none`, or `flat`.
 * - `customMode` (default `false`): Enables explicit frame box sizing.
 * - `boxWidth` / `boxHeight` (default `null`): Optional non-negative offsets added to the minimum custom size.
 *
 * ## Usage Guidelines
 * - Use `state="none"` when no frame should be rendered.
 * - Use `customMode` with `boxWidth`/`boxHeight` for non-standard target footprints.
 * - Keep `type` aligned with the selected target visual (indicator vs. button/enhanced).
 *
 * ## Slots/Content
 * This component has no slots.
 *
 * ## Events
 * This component does not emit custom events.
 *
 * ## Best Practices
 * - Prefer default sizing unless an external target box requires explicit override.
 * - Pass only finite, non-negative custom dimensions for stable output.
 *
 * ## Example
 * ```html
 * <obc-poi-selection-frame
 *   type="button"
 *   state="regular"
 *   custom-mode
 *   box-width="20"
 *   box-height="12"
 * ></obc-poi-selection-frame>
 * ```
 */
export declare class ObcPoiSelectionFrame extends LitElement {
    type: ObcPoiSelectionFrameType;
    state: ObcPoiSelectionFrameState;
    customMode: boolean;
    boxWidth: number | null;
    boxHeight: number | null;
    private get resolvedCustomBoxWidthPx();
    private get resolvedCustomBoxHeightPx();
    private get resolvedCustomVisualWidthPx();
    private get resolvedCustomVisualHeightPx();
    private renderCorner;
    private renderFrame;
    render(): import('lit-html').TemplateResult<1>;
    static styles: import('lit').CSSResult;
}
declare global {
    interface HTMLElementTagNameMap {
        'obc-poi-selection-frame': ObcPoiSelectionFrame;
    }
}
//# sourceMappingURL=poi-selection-frame.d.ts.map