1export interface RpcEnvelope<T> {2 ok: boolean;3 value?: T;4 error?: string;5}67export interface ConfigDraft {8 resolutionMode: "native" | "fixed";9 width: string;10 height: string;11 framerate: string;12 rateMode: "cbr" | "cqp" | "unavailable";13 bitrateKbps: string;14 quantizer: string;15}1617export interface ConfigRequest {18 schema_version: 1;19 expected_revision: string;20 settings: {21 resolution: { mode: "native" } | { mode: "fixed"; width: number; height: number };22 framerate: number;23 rate_control: null | { mode: "cbr"; bitrate_kbps: number } | { mode: "cqp"; quantizer: number };24 };25}2627export interface SnapshotView {28 installed: boolean;29 compatible: boolean;30 serviceActive: boolean;31 serviceState: string;32 serviceLabel: string;33 summary: string;34 overall: string;35 version: string;36 hostFingerprint: string;37 uptime: string;38 sessionActive: boolean;39 lastError: string | null;40 managementError: string | null;41 peerFingerprint: string | null;42 grants: string[];43 epoch: number;44 pendingTransaction: unknown;45 streamDiagnosticsAvailable: boolean;46 factoryResetAvailable: boolean;47}4849export function unwrapRpc<T>(envelope: RpcEnvelope<T>): T;50export function formatUptime(milliseconds: unknown): string;51export function normalizeSnapshot(rawValue: unknown): SnapshotView;52export function normalizeConfig(rawValue: unknown): {53 revision: string;54 pendingTransaction: unknown;55 draft: ConfigDraft;56};57export function buildConfigRequest(revision: string, draft: ConfigDraft): ConfigRequest;58export function transactionId(pending: unknown): string | null;59export function isValidHostFingerprint(fingerprint: unknown): fingerprint is string;