// Code generated by protoc-gen-ts_proto. DO NOT EDIT. // versions: // protoc-gen-ts_proto v2.2.0 // protoc v5.28.0 // source: video_streaming/next_request_policy.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; import { PlaybackCookie } from "./playback_cookie.js"; export const protobufPackage = "video_streaming"; export interface NextRequestPolicy { targetAudioReadaheadMs?: number | undefined; targetVideoReadaheadMs?: number | undefined; backoffTimeMs?: number | undefined; playbackCookie?: PlaybackCookie | undefined; videoId?: string | undefined; } function createBaseNextRequestPolicy(): NextRequestPolicy { return { targetAudioReadaheadMs: 0, targetVideoReadaheadMs: 0, backoffTimeMs: 0, playbackCookie: undefined, videoId: "", }; } export const NextRequestPolicy: MessageFns = { encode(message: NextRequestPolicy, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { if (message.targetAudioReadaheadMs !== undefined && message.targetAudioReadaheadMs !== 0) { writer.uint32(8).int32(message.targetAudioReadaheadMs); } if (message.targetVideoReadaheadMs !== undefined && message.targetVideoReadaheadMs !== 0) { writer.uint32(16).int32(message.targetVideoReadaheadMs); } if (message.backoffTimeMs !== undefined && message.backoffTimeMs !== 0) { writer.uint32(32).int32(message.backoffTimeMs); } if (message.playbackCookie !== undefined) { PlaybackCookie.encode(message.playbackCookie, writer.uint32(58).fork()).join(); } if (message.videoId !== undefined && message.videoId !== "") { writer.uint32(66).string(message.videoId); } return writer; }, decode(input: BinaryReader | Uint8Array, length?: number): NextRequestPolicy { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseNextRequestPolicy(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: if (tag !== 8) { break; } message.targetAudioReadaheadMs = reader.int32(); continue; case 2: if (tag !== 16) { break; } message.targetVideoReadaheadMs = reader.int32(); continue; case 4: if (tag !== 32) { break; } message.backoffTimeMs = reader.int32(); continue; case 7: if (tag !== 58) { break; } message.playbackCookie = PlaybackCookie.decode(reader, reader.uint32()); continue; case 8: if (tag !== 66) { break; } message.videoId = reader.string(); continue; } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, fromJSON(object: any): NextRequestPolicy { return { targetAudioReadaheadMs: isSet(object.targetAudioReadaheadMs) ? globalThis.Number(object.targetAudioReadaheadMs) : 0, targetVideoReadaheadMs: isSet(object.targetVideoReadaheadMs) ? globalThis.Number(object.targetVideoReadaheadMs) : 0, backoffTimeMs: isSet(object.backoffTimeMs) ? globalThis.Number(object.backoffTimeMs) : 0, playbackCookie: isSet(object.playbackCookie) ? PlaybackCookie.fromJSON(object.playbackCookie) : undefined, videoId: isSet(object.videoId) ? globalThis.String(object.videoId) : "", }; }, toJSON(message: NextRequestPolicy): unknown { const obj: any = {}; if (message.targetAudioReadaheadMs !== undefined && message.targetAudioReadaheadMs !== 0) { obj.targetAudioReadaheadMs = Math.round(message.targetAudioReadaheadMs); } if (message.targetVideoReadaheadMs !== undefined && message.targetVideoReadaheadMs !== 0) { obj.targetVideoReadaheadMs = Math.round(message.targetVideoReadaheadMs); } if (message.backoffTimeMs !== undefined && message.backoffTimeMs !== 0) { obj.backoffTimeMs = Math.round(message.backoffTimeMs); } if (message.playbackCookie !== undefined) { obj.playbackCookie = PlaybackCookie.toJSON(message.playbackCookie); } if (message.videoId !== undefined && message.videoId !== "") { obj.videoId = message.videoId; } return obj; }, create, I>>(base?: I): NextRequestPolicy { return NextRequestPolicy.fromPartial(base ?? ({} as any)); }, fromPartial, I>>(object: I): NextRequestPolicy { const message = createBaseNextRequestPolicy(); message.targetAudioReadaheadMs = object.targetAudioReadaheadMs ?? 0; message.targetVideoReadaheadMs = object.targetVideoReadaheadMs ?? 0; message.backoffTimeMs = object.backoffTimeMs ?? 0; message.playbackCookie = (object.playbackCookie !== undefined && object.playbackCookie !== null) ? PlaybackCookie.fromPartial(object.playbackCookie) : undefined; message.videoId = object.videoId ?? ""; return message; }, }; type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends globalThis.Array ? globalThis.Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial } : Partial; type KeysOfUnion = T extends T ? keyof T : never; export type Exact = P extends Builtin ? P : P & { [K in keyof P]: Exact } & { [K in Exclude>]: never }; function isSet(value: any): boolean { return value !== null && value !== undefined; } export interface MessageFns { encode(message: T, writer?: BinaryWriter): BinaryWriter; decode(input: BinaryReader | Uint8Array, length?: number): T; fromJSON(object: any): T; toJSON(message: T): unknown; create, I>>(base?: I): T; fromPartial, I>>(object: I): T; }