import * as _angular_core from '@angular/core';
import { AfterViewInit } from '@angular/core';
import { ClassValue } from 'clsx';
import * as class_variance_authority_types from 'class-variance-authority/types';
import { VariantProps } from 'class-variance-authority';

type ZSkeletonType = 'bar' | 'circle' | 'text';
type ZSkeletonSize = 'sm' | 'default' | 'lg';
interface ZSkeletonRowItem {
    index: number;
    height: string;
}

declare class ZSkeletonComponent implements AfterViewInit {
    private readonly _elementRef;
    readonly class: _angular_core.InputSignal<ClassValue>;
    readonly zType: _angular_core.InputSignal<ZSkeletonType>;
    readonly zSize: _angular_core.InputSignal<ZSkeletonSize>;
    readonly zWidth: _angular_core.InputSignal<string>;
    readonly zHeight: _angular_core.InputSignal<string | undefined>;
    readonly zRows: _angular_core.InputSignal<number>;
    readonly zGap: _angular_core.InputSignal<number>;
    readonly zAnimated: _angular_core.InputSignal<boolean>;
    readonly zRadius: _angular_core.InputSignal<string>;
    private readonly _calculatedRows;
    ngAfterViewInit(): void;
    protected readonly containerClass: _angular_core.Signal<string>;
    protected readonly hostHeight: _angular_core.Signal<string | undefined>;
    protected readonly skeletonClasses: _angular_core.Signal<string>;
    protected readonly circleStyles: _angular_core.Signal<{
        width: string;
        height: string;
    } | {
        width?: undefined;
        height?: undefined;
    }>;
    protected readonly shouldShowMultipleRows: _angular_core.Signal<boolean>;
    protected readonly rowsArray: _angular_core.Signal<ZSkeletonRowItem[]>;
    private _calculateBarRows;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<ZSkeletonComponent, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<ZSkeletonComponent, "z-skeleton", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "zType": { "alias": "zType"; "required": false; "isSignal": true; }; "zSize": { "alias": "zSize"; "required": false; "isSignal": true; }; "zWidth": { "alias": "zWidth"; "required": false; "isSignal": true; }; "zHeight": { "alias": "zHeight"; "required": false; "isSignal": true; }; "zRows": { "alias": "zRows"; "required": false; "isSignal": true; }; "zGap": { "alias": "zGap"; "required": false; "isSignal": true; }; "zAnimated": { "alias": "zAnimated"; "required": false; "isSignal": true; }; "zRadius": { "alias": "zRadius"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
}

declare const zSkeletonVariants: (props?: ({
    type?: "bar" | "circle" | "text" | null | undefined;
    size?: "sm" | "default" | "lg" | null | undefined;
    animated?: boolean | null | undefined;
} & class_variance_authority_types.ClassProp) | undefined) => string;
type ZSkeletonVariants = VariantProps<typeof zSkeletonVariants>;

export { ZSkeletonComponent, zSkeletonVariants };
export type { ZSkeletonRowItem, ZSkeletonSize, ZSkeletonType, ZSkeletonVariants };
