import type { Disposable, Event } from "@yume-chan/event";
import type { ScrcpyMediaStreamPacket, ScrcpyVideoCodecId } from "@yume-chan/scrcpy";
import type { WritableStream } from "@yume-chan/stream-extra";
export interface ScrcpyVideoDecoderCapability {
    maxProfile?: number;
    maxLevel?: number;
}
export interface ScrcpyVideoDecoder extends Disposable {
    readonly sizeChanged: Event<{
        width: number;
        height: number;
    }>;
    readonly width: number;
    readonly height: number;
    readonly framesRendered: number;
    readonly framesSkipped: number;
    readonly writable: WritableStream<ScrcpyMediaStreamPacket>;
}
export interface ScrcpyVideoDecoderConstructor {
    readonly capabilities: Record<string, ScrcpyVideoDecoderCapability>;
    new (codec: ScrcpyVideoCodecId): ScrcpyVideoDecoder;
}
//# sourceMappingURL=types.d.ts.map