import { TemplateRef } from '@angular/core';
import { SpotlightPosition } from './types/spotlight-position';
import { SpotlightStepAction } from './types/spotlight-step';
import * as i0 from "@angular/core";
/**
 * Componente de popover do Spotlight.
 *
 * Exibe o card de destaque com título, mensagem, seta direcional, contador de passos,
 * botões de navegação e, em modo simples (passo único), o checkbox "não mostrar novamente".
 *
 * Este componente é instanciado programaticamente pelo `SpotlightOverlayComponent`
 * via CDK Overlay. Normalmente não é usado diretamente no template.
 */
export declare class SpotlightComponent {
    /** Título do popover. Aceita string ou `TemplateRef` para conteúdo dinâmico. */
    title: import("@angular/core").InputSignal<string | TemplateRef<any>>;
    /** Mensagem principal do popover. Aceita string ou `TemplateRef` para conteúdo dinâmico. */
    message: import("@angular/core").InputSignal<string | TemplateRef<any> | undefined>;
    /** Template opcional para área de mídia/conteúdo customizado acima da mensagem. */
    content: import("@angular/core").InputSignal<TemplateRef<any> | null>;
    /** Posição do popover em relação ao elemento alvo. @default 'bottom-center' */
    position: import("@angular/core").InputSignal<SpotlightPosition>;
    /** Número do passo atual (1-based) exibido no contador. @default 1 */
    currentStep: import("@angular/core").InputSignal<number>;
    /** Total de passos do tour, usado no contador e para controle de botões. @default 1 */
    totalSteps: import("@angular/core").InputSignal<number>;
    /**
     * Exibe o checkbox "não mostrar novamente" (apenas em passo único).
     * Passe `false` para suprimir o checkbox quando não for necessário persistir a preferência.
     * @default true
     */
    showDoNotShowAgain: import("@angular/core").InputSignal<boolean>;
    /** Lista de botões de ação adicionais exibidos na área de rodapé. */
    actions: import("@angular/core").InputSignal<SpotlightStepAction[]>;
    /**
     * Deslocamento em pixels para posicionar a seta manualmente no eixo principal.
     * Quando `null`, o alinhamento é controlado pela `position`. @default null
     */
    arrowOffsetPx: import("@angular/core").InputSignal<number | null>;
    /** Emitido ao clicar no botão de fechar (X). */
    closed: import("@angular/core").OutputEmitterRef<void>;
    /** Emitido ao clicar em "Próximo". */
    next: import("@angular/core").OutputEmitterRef<void>;
    /** Emitido ao clicar em "Voltar". */
    previous: import("@angular/core").OutputEmitterRef<void>;
    /** Emitido ao clicar em "Entendido" (modo simples, passo único). */
    understand: import("@angular/core").OutputEmitterRef<void>;
    /** Estado atual do checkbox "não mostrar novamente". */
    isDoNotShowAgainChecked: import("@angular/core").WritableSignal<boolean>;
    private static instanceCount;
    /** @internal */
    protected readonly instanceId: string;
    /** @internal */
    readonly titleId: string;
    /** @internal */
    readonly descId: string;
    get titleTemplate(): TemplateRef<any> | null;
    get titleString(): string;
    get messageTemplate(): TemplateRef<any> | null;
    get messageString(): string;
    get arrowPosition(): SpotlightPosition;
    get isArrowTop(): boolean;
    get isArrowBottom(): boolean;
    get isArrowLeft(): boolean;
    get isArrowRight(): boolean;
    get arrowRotation(): string;
    get arrowAlignmentClass(): string;
    get arrowPaddingStyle(): Record<string, string>;
    /** Emite o evento `closed`. Chamado pelo botão de fechar no template. */
    onClose(): void;
    /** Emite o evento `next`. Chamado pelo botão "Próximo" no template. */
    onNext(): void;
    /** Emite o evento `previous`. Chamado pelo botão "Voltar" no template. */
    onPrevious(): void;
    /** Emite o evento `understand`. Chamado pelo botão "Entendido" no template. */
    onUnderstand(): void;
    /** Alterna o estado de `isDoNotShowAgainChecked`. */
    toggleDoNotShowAgain(): void;
    private getOppositeDirection;
    static ɵfac: i0.ɵɵFactoryDeclaration<SpotlightComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<SpotlightComponent, "s-spotlight", never, { "title": { "alias": "title"; "required": false; "isSignal": true; }; "message": { "alias": "message"; "required": false; "isSignal": true; }; "content": { "alias": "content"; "required": false; "isSignal": true; }; "position": { "alias": "position"; "required": false; "isSignal": true; }; "currentStep": { "alias": "currentStep"; "required": false; "isSignal": true; }; "totalSteps": { "alias": "totalSteps"; "required": false; "isSignal": true; }; "showDoNotShowAgain": { "alias": "showDoNotShowAgain"; "required": false; "isSignal": true; }; "actions": { "alias": "actions"; "required": false; "isSignal": true; }; "arrowOffsetPx": { "alias": "arrowOffsetPx"; "required": false; "isSignal": true; }; }, { "closed": "closed"; "next": "next"; "previous": "previous"; "understand": "understand"; }, never, never, true, never>;
}
