/** * Native Safari FairPlay Streaming wiring. Safari plays HLS natively; FairPlay * is set up manually via EME: fetch the certificate, on `encrypted` create a * key session, on the SPC `message` POST it to the (Vizor-proxied) FairPlay * license URL with the x-api-key header, then update the session with the CKC. * * The pure helpers are unit-tested; the EME calls are runtime-only (no EME in * jsdom) and are documented for manual Safari verification. The exact EZDRM * FairPlay SPC/CKC encoding is pinned against the vendor guide at live * integration (isolated in buildSpcBody/parseCkc below). */ import type { DeliveryDrm } from '@vizor-vr/shared'; export declare function skdToContentId(skd: string): string; export declare function toBase64(bytes: Uint8Array): string; export declare function fromBase64(b64: string): Uint8Array; export interface FairPlayDeps { fetch: typeof fetch; requestMediaKeySystemAccess: typeof navigator.requestMediaKeySystemAccess; } export declare function setupFairPlay(video: HTMLVideoElement, drm: DeliveryDrm, apiKey: string | undefined, deps?: FairPlayDeps): Promise; //# sourceMappingURL=fairplay.d.ts.map