/**
 * @license
 * Copyright Lamb Team. All Rights Reserved.
 * Licensed under the MIT License. See License.txt in the project root for license information.
 */
import { QueryList, TemplateRef, AfterContentChecked, EventEmitter, OnInit } from '@angular/core';
import { LambTabConfig } from './tab-config';
export declare class LambTabGroupTitleDirective {
    templateRef: TemplateRef<any>;
    constructor(templateRef: TemplateRef<any>);
}
export declare class LambTabTitleDirective {
    templateRef: TemplateRef<any>;
    constructor(templateRef: TemplateRef<any>);
}
export declare class LambTabContentDirective {
    templateRef: TemplateRef<any>;
    constructor(templateRef: TemplateRef<any>);
}
export declare class LambTabDirective {
    id: string;
    title: string;
    icon: string;
    disabled: boolean;
    contentTemplate: LambTabContentDirective;
    titleTemplate: LambTabTitleDirective;
}
export interface LambTabChangeEvent {
    /**
     * Id de la pestaña actualmente activa.
     */
    activeId: string;
    /**
     * Id de la pestaña recién seleccionada.
     */
    nextId: string;
    /**
     * Función que evitará el cambio de pertaña si se llama.
     */
    preventDefault: () => void;
}
export declare class LambTabGroupComponent implements OnInit, AfterContentChecked {
    private config;
    justifyClass: string;
    tabs: QueryList<LambTabDirective>;
    tabGroupTitle: LambTabGroupTitleDirective;
    /**
     * Id del tab que saldrá activado por defecto.
     */
    activeId: string;
    /**
     * Id del tab activo.
     */
    /**
     * Cuando cambia de tab se destruira el contenido anterior o solo se oculatará?
     */
    destroyOnHide: boolean;
    /**
     * Emite cuando hay cambios de tabs.
     */
    tabChange: EventEmitter<LambTabChangeEvent>;
    justify: 'start' | 'center' | 'end' | 'fill' | 'justified';
    onSelect(tabId: string): void;
    constructor(config: LambTabConfig);
    ngOnInit(): void;
    orientation: 'horizontal' | 'vertical';
    type: 'tabss' | 'pills';
    ngAfterContentChecked(): void;
    private getTabById(id);
}
export declare const LAMB_TABS_COMPONENTS: (typeof LambTabGroupTitleDirective | typeof LambTabDirective | typeof LambTabGroupComponent)[];
