UNPKG

ngx-audio-wave

Version:

A modern, accessible audio wave visualization component for Angular 20+ with comprehensive keyboard navigation and screen reader support.

75 lines (72 loc) 4.9 kB
import * as _angular_core from '@angular/core'; import { AfterViewInit, OnDestroy } from '@angular/core'; import { SafeUrl } from '@angular/platform-browser'; declare class NgxAudioWave implements AfterViewInit, OnDestroy { readonly audioSrc: _angular_core.InputSignal<string | SafeUrl>; readonly color: _angular_core.InputSignal<string>; readonly height: _angular_core.InputSignalWithTransform<number, unknown>; readonly gap: _angular_core.InputSignalWithTransform<number, unknown>; readonly rounded: _angular_core.InputSignalWithTransform<boolean, unknown>; readonly hideBtn: _angular_core.InputSignalWithTransform<boolean, unknown>; readonly skip: _angular_core.InputSignalWithTransform<number, unknown>; readonly volume: _angular_core.InputSignalWithTransform<number, unknown>; readonly playbackRate: _angular_core.InputSignalWithTransform<number, unknown>; readonly loop: _angular_core.InputSignalWithTransform<boolean, unknown>; readonly ariaLabel: _angular_core.InputSignal<string>; readonly playButtonLabel: _angular_core.InputSignal<string>; readonly pauseButtonLabel: _angular_core.InputSignal<string>; readonly progressBarLabel: _angular_core.InputSignal<string>; readonly isPaused: _angular_core.WritableSignal<boolean>; readonly isLoading: _angular_core.WritableSignal<boolean>; readonly hasError: _angular_core.WritableSignal<boolean>; readonly currentVolume: _angular_core.WritableSignal<number>; readonly currentPlaybackRate: _angular_core.WritableSignal<number>; readonly isLooping: _angular_core.WritableSignal<boolean>; readonly progressText: _angular_core.Signal<string>; readonly statusText: _angular_core.Signal<"Loading audio" | "Error loading audio" | "Audio paused" | "Audio playing">; readonly exactPlayedPercent: _angular_core.Signal<number>; readonly exactCurrentTime: _angular_core.WritableSignal<number>; readonly exactDuration: _angular_core.WritableSignal<number>; /** @deprecated This property will be removed in version 21.0.0. Use exactPlayedPercent instead. */ readonly playedPercent: _angular_core.Signal<number>; /** @deprecated This property will be removed in version 21.0.0. Use exactCurrentTime instead. */ readonly currentTime: _angular_core.Signal<number>; /** @deprecated This property will be removed in version 21.0.0. Use exactDuration instead. */ readonly duration: _angular_core.Signal<number>; protected readonly normalizedData: _angular_core.WritableSignal<number[]>; protected readonly clipPath: _angular_core.Signal<string>; protected readonly width: _angular_core.Signal<number>; private readonly platformId; private readonly isPlatformBrowser; private readonly domSanitizer; private readonly httpClient; private readonly audioWaveService; private readonly destroyRef; private audioRef; ngAfterViewInit(): void; ngOnDestroy(): void; play(time?: number): void; pause(): void; stop(): void; setVolume(volume: number): void; mute(): void; unmute(): void; toggleMute(): void; setPlaybackRate(rate: number): void; resetPlaybackRate(): void; increasePlaybackRate(): void; decreasePlaybackRate(): void; setLoop(loop: boolean): void; enableLoop(): void; disableLoop(): void; toggleLoop(): void; setTime(mouseEvent: MouseEvent): void; private calculatePercent; private startInterval; private fetchAudio; protected pauseChange(event: Event): void; protected onKeyDown(event: KeyboardEvent): void; static ɵfac: _angular_core.ɵɵFactoryDeclaration<NgxAudioWave, never>; static ɵcmp: _angular_core.ɵɵComponentDeclaration<NgxAudioWave, "ngx-audio-wave", never, { "audioSrc": { "alias": "audioSrc"; "required": true; "isSignal": true; }; "color": { "alias": "color"; "required": false; "isSignal": true; }; "height": { "alias": "height"; "required": false; "isSignal": true; }; "gap": { "alias": "gap"; "required": false; "isSignal": true; }; "rounded": { "alias": "rounded"; "required": false; "isSignal": true; }; "hideBtn": { "alias": "hideBtn"; "required": false; "isSignal": true; }; "skip": { "alias": "skip"; "required": false; "isSignal": true; }; "volume": { "alias": "volume"; "required": false; "isSignal": true; }; "playbackRate": { "alias": "playbackRate"; "required": false; "isSignal": true; }; "loop": { "alias": "loop"; "required": false; "isSignal": true; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; "isSignal": true; }; "playButtonLabel": { "alias": "playButtonLabel"; "required": false; "isSignal": true; }; "pauseButtonLabel": { "alias": "pauseButtonLabel"; "required": false; "isSignal": true; }; "progressBarLabel": { "alias": "progressBarLabel"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>; } export { NgxAudioWave };