import * as _angular_core from '@angular/core';
import { WrIconName } from 'ngwr/icon';
/** Per-button action shown when the dial expands. */
interface WrSpeedDialAction {
readonly id: string;
readonly label: string;
readonly icon?: WrIconName;
}
/** Direction the action buttons fan out. */
type WrSpeedDialDirection = 'up' | 'down' | 'left' | 'right';
/**
* Floating action button that expands into a fan of secondary actions on
* click / hover. Place inside a positioned container or near `position: fixed`
* — the component itself doesn't pin to the viewport.
*
* @example
* ```html
*
* ```
*
* @see https://ngwr.dev/components/speed-dial
*/
declare class WrSpeedDial {
readonly actions: _angular_core.InputSignal;
/** Direction the actions fan out. @default 'up' */
readonly direction: _angular_core.InputSignal;
/** Two-way bindable open state. @default false */
readonly open: _angular_core.ModelSignal;
/** Icon for the main trigger button. @default 'add' */
readonly icon: _angular_core.InputSignal;
/** Disable interaction. @default false */
readonly disabled: _angular_core.InputSignalWithTransform;
/** Fires when the user picks one of the actions. */
readonly pick: _angular_core.OutputEmitterRef;
protected readonly classes: _angular_core.Signal;
protected onTrigger(): void;
protected onPick(action: WrSpeedDialAction): void;
static ɵfac: _angular_core.ɵɵFactoryDeclaration;
static ɵcmp: _angular_core.ɵɵComponentDeclaration;
}
export { WrSpeedDial };
export type { WrSpeedDialAction, WrSpeedDialDirection };