/**
 * Floating Action Button (FAB) with expandable satellite actions
 *
 * @element pds-fab
 * @fires satellite-click - Fired when a satellite button is clicked
 *
 * @slot - Main FAB button content (typically an icon or avatar)
 * @slot satellite-{key} - Override individual satellite button content
 *
 * @cssprop --fab-size - Size of the main FAB button (default: 64px)
 * @cssprop --fab-bg - Background color of the main FAB (default: var(--color-primary-600))
 * @cssprop --fab-fg - Foreground color of the main FAB (default: white)
 * @cssprop --sat-size - Size of satellite buttons (default: 48px)
 * @cssprop --sat-bg - Background color of satellites (default: var(--color-surface-elevated))
 * @cssprop --sat-fg - Foreground color of satellites (default: var(--color-text-primary))
 * @cssprop --radius - Distance of satellites from main FAB (default: 100px)
 * @cssprop --transition-duration - Animation duration (default: 420ms)
 *
 * @csspart fab - The main FAB button
 * @csspart satellite - Individual satellite buttons
 * @csspart label - Satellite button labels
 */
export class PdsFab extends HTMLElement {
    static get observedAttributes(): string[];
    set open(val: boolean);
    /**
     * Controls whether the FAB is expanded
     * @type {boolean}
     * @attr open
     */
    get open(): boolean;
    set radius(val: number);
    /**
     * Distance in pixels from the main FAB to satellites
     * @type {number}
     * @attr radius
     * @default 100
     */
    get radius(): number;
    set spread(val: number);
    /**
     * Arc angle in degrees for satellite distribution
     * @type {number}
     * @attr spread
     * @default 90
     */
    get spread(): number;
    set startAngle(val: number);
    /**
     * Starting angle in degrees (0=right, 90=down, 180=left, 270=up)
     * If not specified, the angle is auto-detected based on the FAB's corner position:
     * - Bottom-right: 180° (fly left/up)
     * - Bottom-left: 315° (fly right/up)
     * - Top-right: 225° (fly left/down)
     * - Top-left: 45° (fly right/down)
     * @type {number}
     * @attr start-angle
     * @default 180 (or auto-detected)
     */
    get startAngle(): number;
    set satellites(val: Array<{
        key: string;
        icon?: string;
        label?: string;
        action?: string;
    }>);
    /**
     * Array of satellite button configurations
     * @type {Array<{key: string, icon?: string, label?: string, action?: string}>}
     */
    get satellites(): Array<{
        key: string;
        icon?: string;
        label?: string;
        action?: string;
    }>;
    attributeChangedCallback(name: any, oldVal: any, newVal: any): void;
    connectedCallback(): void;
    disconnectedCallback(): void;
    #private;
}
//# sourceMappingURL=pds-fab.d.ts.map