OpenTUI 0.4.4
This release has no release notes. The list below comes from its published type declarations.
API changes#
@opentui/core#
Added
class AudioInitializationError extends Errorclass AudioStream<M = AudioStreamMetadata> extends EventEmitter<AudioStreamEvents<M>>class AudioStreamError extends Errorconst NativeAudioStreamCloseReason: { readonly PreserveNativeTerminal: 0; readonly TransportError: 1; readonly Disposed: 2; }const NativeAudioStreamFormat: { readonly Mp3: 1; readonly Flac: 2; }const NativeAudioStreamState: { readonly Initializing: 0; readonly Buffering: 1; readonly Playing: 2; readonly Ended: 3; readonly Failed: 4; readonly Cancelled: 5; readonly Reconnecting: 6; }constructor AudioInitializationError(action: AudioInitializationAction, message: string, status?: number, cause?: unknown)constructor AudioStreamError(message: string, context: AudioStreamErrorContext, cause?: unknown)function createIcyStreamDemuxer(options: IcyStreamDemuxerOptions): AudioStreamDemuxer<AudioStreamMetadata>interface AudioStreamBodyOptions<M = AudioStreamMetadata> extends AudioStreamOptionsinterface AudioStreamBufferOptionsinterface AudioStreamConnectContextinterface AudioStreamConnection<I = unknown>interface AudioStreamConnector<I = unknown>interface AudioStreamContentTypeContextinterface AudioStreamDemuxer<M>interface AudioStreamErrorContextinterface AudioStreamEvents<M = AudioStreamMetadata>interface AudioStreamMetadatainterface AudioStreamOptionsinterface AudioStreamReconnectEventinterface AudioStreamReconnectOptionsinterface AudioStreamRetryContextinterface AudioStreamSourceOptions<I = unknown, M = AudioStreamMetadata> extends AudioStreamOptionsinterface AudioStreamStatsinterface AudioStreamUrlOptions extends AudioStreamOptionsinterface IcyStreamDemuxerOptionsmethod Audio.playStream<M = AudioStreamMetadata>(source: AudioStreamBody, options?: AudioStreamBodyOptions<M>): Promise<AudioStream<M>>method Audio.playStreamSource<I, M = AudioStreamMetadata>(connector: AudioStreamConnector<I>, options?: AudioStreamSourceOptions<I, M>): Promise<AudioStream<M>>method Audio.playStreamUrl(source: string | URL, options?: AudioStreamUrlOptions): Promise<AudioStream<AudioStreamMetadata>>readonly property Audio.sampleRate: numberproperty AudioEngineLib.audioCloseStream: (engine: AudioEngineHandle, streamId: number, reason: NativeAudioStreamCloseReason) => { status: number; stats: NativeAudioStreamStats | null; }property AudioEngineLib.audioCreateStream: (engine: AudioEngineHandle, options: AudioStreamCreateOptions) => { status: number; streamId: number | null; }property AudioEngineLib.audioEndStream: (engine: AudioEngineHandle, streamId: number) => numberproperty AudioEngineLib.audioGetStreamStats: (engine: AudioEngineHandle, streamId: number) => NativeAudioStreamStats | nullproperty AudioEngineLib.audioRestartStream: (engine: AudioEngineHandle, streamId: number) => numberproperty AudioEngineLib.audioSetStreamGroup: (engine: AudioEngineHandle, streamId: number, groupId: number) => numberproperty AudioEngineLib.audioSetStreamPan: (engine: AudioEngineHandle, streamId: number, pan: number) => numberproperty AudioEngineLib.audioSetStreamVolume: (engine: AudioEngineHandle, streamId: number, volume: number) => numberproperty AudioEngineLib.audioWriteStream: (engine: AudioEngineHandle, streamId: number, data: Uint8Array) => numbertype AudioInitializationAction = "resolveRenderLib" | "createAudioEngine" | "start"type AudioStreamAction = "fetch" | "response" | "source" | "demuxer" | "create" | "write" | "end" | "restart" | "stats" | "decoder" | "destroy" | "setVolume" | "setPan" | "setGroup"type AudioStreamBody = ReadableStream<Uint8Array> | AsyncIterable<Uint8Array>type AudioStreamContentTypePolicy = "validate" | "ignore" | ((context: AudioStreamContentTypeContext) => boolean)type AudioStreamCreateOptions = { capacityMs: number; startupMs: number; resumeMs: number; volume: number; pan: number; groupId: number; maxProbeBytes: number; format: NativeAudioStreamFormat; }type AudioStreamDemuxOutput<M> = { type: "audio"; data: Uint8Array; } | { type: "metadata"; metadata: M | null; }type AudioStreamDemuxerFactory<M> = () => AudioStreamDemuxer<M>type AudioStreamFormat = "mp3" | "flac"type AudioStreamMetadataFormat = "icy"type AudioStreamRetryDecision = false | { readonly delayMs?: number; }type AudioStreamRetryPhase = "connect" | "read"type AudioStreamState = "initializing" | "buffering" | "playing" | "reconnecting" | "ended" | "errored" | "disposed"type NativeAudioStreamCloseReason = NativeAudioStreamCloseReasonTypetype NativeAudioStreamFormat = NativeAudioStreamFormatTypetype NativeAudioStreamState = NativeAudioStreamStateTypetype NativeAudioStreamStats = { bytesReceived: bigint; framesDecoded: bigint; framesPlayed: bigint; state: number; sampleRate: number; channels: number; bufferedFrames: number; capacityFrames: number; underruns: number; errorCode: number; readyGeneration: number; }