import { OnDestroy } from '@angular/core';
import { AudioPlayerService } from '../services/audio.service';
import * as i0 from "@angular/core";
export interface Track {
    title: string;
    description: string;
    url: string;
}
export type AudioPlayerVariantProps = 'default' | 'fixed';
export declare class AudioPlayerComponent implements OnDestroy {
    audioPlayerService: AudioPlayerService;
    variant: import("@angular/core").InputSignal<AudioPlayerVariantProps>;
    shadow: import("@angular/core").InputSignal<boolean>;
    opened: import("@angular/core").ModelSignal<boolean>;
    tracks: import("@angular/core").InputSignal<Track[]>;
    showTrackList: import("@angular/core").InputSignal<boolean>;
    currentTrackIndex: import("@angular/core").ModelSignal<number>;
    currentTrack: import("@angular/core").Signal<Track | undefined>;
    iconSkipPrevious: string;
    iconSkipNext: string;
    iconPlay: string;
    iconPause: string;
    iconMusicNote: string;
    offScreen: import("@angular/core").WritableSignal<boolean>;
    playerClass: import("@angular/core").Signal<string>;
    constructor();
    entering: import("@angular/core").WritableSignal<boolean>;
    leaving: import("@angular/core").WritableSignal<boolean>;
    handleAnimationEnd(event: AnimationEvent): void;
    handleAnimationStart(event: AnimationEvent): void;
    playTrack(index: number): Promise<void>;
    togglePlay(): Promise<void>;
    previous(): Promise<void>;
    next(): Promise<void>;
    handleOpen(): void;
    handleClose(): void;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<AudioPlayerComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<AudioPlayerComponent, "st-audio-player", never, { "variant": { "alias": "variant"; "required": false; "isSignal": true; }; "shadow": { "alias": "shadow"; "required": false; "isSignal": true; }; "opened": { "alias": "opened"; "required": false; "isSignal": true; }; "tracks": { "alias": "tracks"; "required": false; "isSignal": true; }; "showTrackList": { "alias": "showTrackList"; "required": false; "isSignal": true; }; "currentTrackIndex": { "alias": "currentTrackIndex"; "required": false; "isSignal": true; }; }, { "opened": "openedChange"; "currentTrackIndex": "currentTrackIndexChange"; }, never, never, true, never>;
}
