import * as _angular_core from '@angular/core';
import { TemplateRef } from '@angular/core';
import { ClassValue } from 'clsx';

type ZMarqueeDirection = 'left' | 'right' | 'up' | 'down';
type ZMarqueeFade = 'none' | 'left' | 'right' | 'top' | 'bottom' | 'both';

declare class ZMarqueeComponent {
    readonly class: _angular_core.InputSignal<ClassValue>;
    readonly zDirection: _angular_core.InputSignal<ZMarqueeDirection>;
    readonly zPauseOnHover: _angular_core.InputSignalWithTransform<boolean, string | boolean>;
    readonly zRepeat: _angular_core.InputSignal<number>;
    readonly zDuration: _angular_core.InputSignal<number>;
    readonly zGap: _angular_core.InputSignal<string>;
    readonly zFade: _angular_core.InputSignal<ZMarqueeFade>;
    protected readonly contentTemplate: _angular_core.Signal<TemplateRef<unknown> | undefined>;
    protected readonly isVertical: _angular_core.Signal<boolean>;
    protected readonly isReverse: _angular_core.Signal<boolean>;
    protected readonly showLeftFade: _angular_core.Signal<boolean>;
    protected readonly showRightFade: _angular_core.Signal<boolean>;
    protected readonly showTopFade: _angular_core.Signal<boolean>;
    protected readonly showBottomFade: _angular_core.Signal<boolean>;
    protected readonly hostClasses: _angular_core.Signal<string>;
    protected readonly repeatItems: _angular_core.Signal<number[]>;
    protected readonly copyItems: readonly [0, 1];
    protected readonly runnerClasses: _angular_core.Signal<string>;
    protected readonly animationClasses: _angular_core.Signal<string>;
    protected readonly trackClasses: _angular_core.Signal<string>;
    protected readonly contentClasses: _angular_core.Signal<string>;
    static ɵfac: _angular_core.ɵɵFactoryDeclaration<ZMarqueeComponent, never>;
    static ɵcmp: _angular_core.ɵɵComponentDeclaration<ZMarqueeComponent, "z-marquee", never, { "class": { "alias": "class"; "required": false; "isSignal": true; }; "zDirection": { "alias": "zDirection"; "required": false; "isSignal": true; }; "zPauseOnHover": { "alias": "zPauseOnHover"; "required": false; "isSignal": true; }; "zRepeat": { "alias": "zRepeat"; "required": false; "isSignal": true; }; "zDuration": { "alias": "zDuration"; "required": false; "isSignal": true; }; "zGap": { "alias": "zGap"; "required": false; "isSignal": true; }; "zFade": { "alias": "zFade"; "required": false; "isSignal": true; }; }, {}, ["contentTemplate"], never, true, never>;
}

export { ZMarqueeComponent };
export type { ZMarqueeDirection, ZMarqueeFade };
