import { EventEmitter } from '@angular/core';
import { ThumbnailsItem } from './models/thumbnails-item';
import * as i0 from "@angular/core";
/**
 * @description Componente de galeria de miniaturas com suporte a seleção múltipla
 * e abertura de itens. Gerencia o estado de seleção internamente e emite eventos
 * para o componente pai.
 *
 * @example
 * ```html
 * <s-thumbnails
 *   [items]="miniaturas"
 *   [selectable]="true"
 *   [(selection)]="itensSelecionados"
 *   (itemOpened)="onItemAberto($event)" />
 * ```
 *
 * @category Data
 */
export declare class ThumbnailsComponent {
    /** @description Lista de itens exibidos na galeria. @default [] */
    items: ThumbnailsItem[];
    /** @description Habilita a seleção de itens. @default true */
    selectable: boolean;
    /** @description Quando `true`, combina o evento de checkbox com o de seleção. @default true */
    combineCheckboxEvent: boolean;
    /**
     * @description Lista de itens atualmente selecionados. Suporta two-way binding.
     * @default []
     */
    set selection(items: ThumbnailsItem[]);
    /** @description Emitido quando a seleção de itens muda. */
    selectionChange: EventEmitter<ThumbnailsItem[]>;
    /** @description Emitido quando o usuário abre um item (clique duplo ou ação de abrir). */
    itemOpened: EventEmitter<ThumbnailsItem>;
    private _selection;
    onItemOpened(item: ThumbnailsItem): void;
    onItemSelected(items: {
        item: ThumbnailsItem;
        selected: boolean;
    }): void;
    isSelected(item: ThumbnailsItem): boolean;
    static ɵfac: i0.ɵɵFactoryDeclaration<ThumbnailsComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<ThumbnailsComponent, "s-thumbnails", never, { "items": { "alias": "items"; "required": false; }; "selectable": { "alias": "selectable"; "required": false; }; "combineCheckboxEvent": { "alias": "combineCheckboxEvent"; "required": false; }; "selection": { "alias": "selection"; "required": false; }; }, { "selectionChange": "selectionChange"; "itemOpened": "itemOpened"; }, never, never, false, never>;
}
