import { OnInit } from '@angular/core'; import { BaseDirective } from '../directives'; import { Popup } from '../directives'; import { SizeOption } from '../types/size-options.type'; import * as i0 from "@angular/core"; /** * @TailwindNG Button component interface. */ export interface Button { readonly popup?: Popup; readonly size: SizeOption; readonly isFab: boolean; readonly tabIndex: number; readonly variant: ButtonVariant; } /** Button variant */ export type ButtonVariant = 'primary' | 'secondary' | 'tonal' | 'text'; export interface ButtonConfig extends Partial & Record> { base?: string; fab?: string; } export declare const BUTTON_CONFIG: import("@angular/core").InjectionToken>; export declare abstract class ButtonBase extends BaseDirective implements Button, OnInit { tabIndex: number; popup?: Popup; isFab: boolean; size: SizeOption; variant: ButtonVariant; ngOnInit(): void; protected get isPopupExpanded(): boolean; protected onPointerUp(event: Event): void; protected onKeyup(event: KeyboardEvent): void; protected addEventListeners(): void; protected removeEventListeners(): void; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵdir: i0.ɵɵDirectiveDeclaration; } /** * Checks if the component is a Button. * If so, you can have access to the Button members inside this block scope. */ export declare function isButton(component: unknown): component is Button; /** * Checks if the component is a Primary Button. * If so, you can safely access the Button members inside this block scope. */ export declare function isPrimaryButton(component: unknown): component is Button; /** * Checks if the component is a Secondary Button. * If so, you can safely access the Button members inside this block scope. */ export declare function isSecondaryButton(component: unknown): component is Button; /** * Checks if the component is a Tonal Button. * If so, you can safely access the Button members inside this block scope. */ export declare function isTonalButton(component: unknown): component is Button; /** * Checks if the component is a Text Button. * If so, you can safely access the Button members inside this block scope. */ export declare function isTextButton(component: unknown): component is Button;