// 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/time_range.proto /* eslint-disable */ import { BinaryReader, BinaryWriter } from "@bufbuild/protobuf/wire"; export const protobufPackage = "video_streaming"; export interface TimeRange { start?: number | undefined; duration?: number | undefined; timescale?: number | undefined; } function createBaseTimeRange(): TimeRange { return { start: 0, duration: 0, timescale: 0 }; } export const TimeRange: MessageFns = { encode(message: TimeRange, writer: BinaryWriter = new BinaryWriter()): BinaryWriter { if (message.start !== undefined && message.start !== 0) { writer.uint32(8).int64(message.start); } if (message.duration !== undefined && message.duration !== 0) { writer.uint32(16).int64(message.duration); } if (message.timescale !== undefined && message.timescale !== 0) { writer.uint32(24).int32(message.timescale); } return writer; }, decode(input: BinaryReader | Uint8Array, length?: number): TimeRange { const reader = input instanceof BinaryReader ? input : new BinaryReader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseTimeRange(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: if (tag !== 8) { break; } message.start = longToNumber(reader.int64()); continue; case 2: if (tag !== 16) { break; } message.duration = longToNumber(reader.int64()); continue; case 3: if (tag !== 24) { break; } message.timescale = reader.int32(); continue; } if ((tag & 7) === 4 || tag === 0) { break; } reader.skip(tag & 7); } return message; }, fromJSON(object: any): TimeRange { return { start: isSet(object.start) ? globalThis.Number(object.start) : 0, duration: isSet(object.duration) ? globalThis.Number(object.duration) : 0, timescale: isSet(object.timescale) ? globalThis.Number(object.timescale) : 0, }; }, toJSON(message: TimeRange): unknown { const obj: any = {}; if (message.start !== undefined && message.start !== 0) { obj.start = Math.round(message.start); } if (message.duration !== undefined && message.duration !== 0) { obj.duration = Math.round(message.duration); } if (message.timescale !== undefined && message.timescale !== 0) { obj.timescale = Math.round(message.timescale); } return obj; }, create, I>>(base?: I): TimeRange { return TimeRange.fromPartial(base ?? ({} as any)); }, fromPartial, I>>(object: I): TimeRange { const message = createBaseTimeRange(); message.start = object.start ?? 0; message.duration = object.duration ?? 0; message.timescale = object.timescale ?? 0; 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 longToNumber(int64: { toString(): string }): number { const num = globalThis.Number(int64.toString()); if (num > globalThis.Number.MAX_SAFE_INTEGER) { throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); } if (num < globalThis.Number.MIN_SAFE_INTEGER) { throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); } return num; } 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; }