import { nothing, type TemplateResult } from 'lit'; import type { NuiType } from '../../types/nui-type.js'; import type { BadgeSeverity, ButtonIconPosition, ButtonMedia, ButtonSeverity, ButtonSize, ButtonType, ButtonVariant } from './types.js'; export interface NuiButtonViewState { label: string; variant: ButtonVariant; severity: ButtonSeverity | ''; disabled: boolean; type: ButtonType; icon: string; iconPos: ButtonIconPosition; iconClass: string; badge: string; badgeClass: string; badgeSeverity: BadgeSeverity; loading: boolean; loadingIcon: string; link: boolean; raised: boolean; rounded: boolean; text: boolean; outlined: boolean; size: ButtonSize | ''; plain: boolean; fluid: boolean; nuiType: NuiType; media: ButtonMedia | ''; alt: string; width: string; height: string; gap: string; padding: string; src: string; buttonClass: string; buttonStyle: string; } export declare function resolveSeverity(state: Pick): ButtonSeverity | 'primary'; export declare function resolveVisualVariant(state: Pick): 'solid' | 'outlined' | 'text' | 'link'; export declare function getButtonClass(buttonClass: string): string; export declare function getInlineStyles(state: Pick): string; export declare const DEFAULT_LOADING_ICON = "svg-spinners:90-ring-with-bg"; export declare function renderIcon(icon: string, iconWrapperClass: string): TemplateResult; export declare function renderLoadingIcon(loadingIcon: string, iconClass: string): TemplateResult; export declare function renderMedia(state: Pick): TemplateResult | typeof nothing; export declare function renderBadge(state: Pick): TemplateResult | typeof nothing; export declare function renderLabel(label: string): TemplateResult | typeof nothing; export declare function renderButton(state: NuiButtonViewState): TemplateResult; //# sourceMappingURL=logic.d.ts.map