/* eslint-disable */ import Long from 'long'; import _m0 from 'protobufjs/minimal'; export const protobufPackage = 'cosmos.base.snapshots.v1beta1'; /** Snapshot contains Tendermint state sync snapshot info. */ export interface Snapshot { height: Long; format: number; chunks: number; hash: Uint8Array; metadata?: Metadata; } /** Metadata contains SDK-specific snapshot metadata. */ export interface Metadata { /** SHA-256 chunk hashes */ chunkHashes: Uint8Array[]; } const baseSnapshot: object = { height: Long.UZERO, format: 0, chunks: 0 }; export const Snapshot = { encode(message: Snapshot, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (!message.height.isZero()) { writer.uint32(8).uint64(message.height); } if (message.format !== 0) { writer.uint32(16).uint32(message.format); } if (message.chunks !== 0) { writer.uint32(24).uint32(message.chunks); } if (message.hash.length !== 0) { writer.uint32(34).bytes(message.hash); } if (message.metadata !== undefined) { Metadata.encode(message.metadata, writer.uint32(42).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): Snapshot { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = { ...baseSnapshot } as Snapshot; message.hash = new Uint8Array(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.height = reader.uint64() as Long; break; case 2: message.format = reader.uint32(); break; case 3: message.chunks = reader.uint32(); break; case 4: message.hash = reader.bytes(); break; case 5: message.metadata = Metadata.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromJSON(object: any): Snapshot { const message = { ...baseSnapshot } as Snapshot; message.hash = new Uint8Array(); if (object.height !== undefined && object.height !== null) { message.height = Long.fromString(object.height); } else { message.height = Long.UZERO; } if (object.format !== undefined && object.format !== null) { message.format = Number(object.format); } else { message.format = 0; } if (object.chunks !== undefined && object.chunks !== null) { message.chunks = Number(object.chunks); } else { message.chunks = 0; } if (object.hash !== undefined && object.hash !== null) { message.hash = bytesFromBase64(object.hash); } if (object.metadata !== undefined && object.metadata !== null) { message.metadata = Metadata.fromJSON(object.metadata); } else { message.metadata = undefined; } return message; }, toJSON(message: Snapshot): unknown { const obj: any = {}; message.height !== undefined && (obj.height = (message.height || Long.UZERO).toString()); message.format !== undefined && (obj.format = message.format); message.chunks !== undefined && (obj.chunks = message.chunks); message.hash !== undefined && (obj.hash = base64FromBytes(message.hash !== undefined ? message.hash : new Uint8Array())); message.metadata !== undefined && (obj.metadata = message.metadata ? Metadata.toJSON(message.metadata) : undefined); return obj; }, fromPartial(object: DeepPartial): Snapshot { const message = { ...baseSnapshot } as Snapshot; if (object.height !== undefined && object.height !== null) { message.height = object.height as Long; } else { message.height = Long.UZERO; } if (object.format !== undefined && object.format !== null) { message.format = object.format; } else { message.format = 0; } if (object.chunks !== undefined && object.chunks !== null) { message.chunks = object.chunks; } else { message.chunks = 0; } if (object.hash !== undefined && object.hash !== null) { message.hash = object.hash; } else { message.hash = new Uint8Array(); } if (object.metadata !== undefined && object.metadata !== null) { message.metadata = Metadata.fromPartial(object.metadata); } else { message.metadata = undefined; } return message; }, }; const baseMetadata: object = {}; export const Metadata = { encode(message: Metadata, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.chunkHashes) { writer.uint32(10).bytes(v!); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): Metadata { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = { ...baseMetadata } as Metadata; message.chunkHashes = []; while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.chunkHashes.push(reader.bytes()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromJSON(object: any): Metadata { const message = { ...baseMetadata } as Metadata; message.chunkHashes = []; if (object.chunkHashes !== undefined && object.chunkHashes !== null) { for (const e of object.chunkHashes) { message.chunkHashes.push(bytesFromBase64(e)); } } return message; }, toJSON(message: Metadata): unknown { const obj: any = {}; if (message.chunkHashes) { obj.chunkHashes = message.chunkHashes.map((e) => base64FromBytes(e !== undefined ? e : new Uint8Array())); } else { obj.chunkHashes = []; } return obj; }, fromPartial(object: DeepPartial): Metadata { const message = { ...baseMetadata } as Metadata; message.chunkHashes = []; if (object.chunkHashes !== undefined && object.chunkHashes !== null) { for (const e of object.chunkHashes) { message.chunkHashes.push(e); } } return message; }, }; declare var self: any | undefined; declare var window: any | undefined; var globalThis: any = (() => { if (typeof globalThis !== 'undefined') return globalThis; if (typeof self !== 'undefined') return self; if (typeof window !== 'undefined') return window; if (typeof global !== 'undefined') return global; throw 'Unable to locate global object'; })(); const atob: (b64: string) => string = globalThis.atob || ((b64) => globalThis.Buffer.from(b64, 'base64').toString('binary')); function bytesFromBase64(b64: string): Uint8Array { const bin = atob(b64); const arr = new Uint8Array(bin.length); for (let i = 0; i < bin.length; ++i) { arr[i] = bin.charCodeAt(i); } return arr; } const btoa: (bin: string) => string = globalThis.btoa || ((bin) => globalThis.Buffer.from(bin, 'binary').toString('base64')); function base64FromBytes(arr: Uint8Array): string { const bin: string[] = []; for (let i = 0; i < arr.byteLength; ++i) { bin.push(String.fromCharCode(arr[i])); } return btoa(bin.join('')); } type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined | Long; export type DeepPartial = T extends Builtin ? T : T extends Array ? Array> : T extends ReadonlyArray ? ReadonlyArray> : T extends {} ? { [K in keyof T]?: DeepPartial } : Partial; if (_m0.util.Long !== Long) { _m0.util.Long = Long as any; _m0.configure(); }