import { Long, DeepPartial } from "../../helpers"; import * as _m0 from "protobufjs/minimal"; export interface Proof { total: Long; index: Long; leafHash: Uint8Array; aunts: Uint8Array[]; } export interface ProofSDKType { total: Long; index: Long; leaf_hash: Uint8Array; aunts: Uint8Array[]; } export interface ValueOp { /** Encoded in ProofOp.Key. */ key: Uint8Array; /** To encode in ProofOp.Data */ proof?: Proof; } export interface ValueOpSDKType { key: Uint8Array; proof?: ProofSDKType; } export interface DominoOp { key: string; input: string; output: string; } export interface DominoOpSDKType { key: string; input: string; output: string; } /** * ProofOp defines an operation used for calculating Merkle root * The data could be arbitrary format, providing nessecary data * for example neighbouring node hash */ export interface ProofOp { type: string; key: Uint8Array; data: Uint8Array; } /** * ProofOp defines an operation used for calculating Merkle root * The data could be arbitrary format, providing nessecary data * for example neighbouring node hash */ export interface ProofOpSDKType { type: string; key: Uint8Array; data: Uint8Array; } /** ProofOps is Merkle proof defined by the list of ProofOps */ export interface ProofOps { ops: ProofOp[]; } /** ProofOps is Merkle proof defined by the list of ProofOps */ export interface ProofOpsSDKType { ops: ProofOpSDKType[]; } function createBaseProof(): Proof { return { total: Long.ZERO, index: Long.ZERO, leafHash: new Uint8Array(), aunts: [] }; } export const Proof = { encode(message: Proof, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (!message.total.isZero()) { writer.uint32(8).int64(message.total); } if (!message.index.isZero()) { writer.uint32(16).int64(message.index); } if (message.leafHash.length !== 0) { writer.uint32(26).bytes(message.leafHash); } for (const v of message.aunts) { writer.uint32(34).bytes(v!); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): Proof { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseProof(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.total = (reader.int64() as Long); break; case 2: message.index = (reader.int64() as Long); break; case 3: message.leafHash = reader.bytes(); break; case 4: message.aunts.push(reader.bytes()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): Proof { const message = createBaseProof(); message.total = object.total !== undefined && object.total !== null ? Long.fromValue(object.total) : Long.ZERO; message.index = object.index !== undefined && object.index !== null ? Long.fromValue(object.index) : Long.ZERO; message.leafHash = object.leafHash ?? new Uint8Array(); message.aunts = object.aunts?.map(e => e) || []; return message; } }; function createBaseValueOp(): ValueOp { return { key: new Uint8Array(), proof: undefined }; } export const ValueOp = { encode(message: ValueOp, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.key.length !== 0) { writer.uint32(10).bytes(message.key); } if (message.proof !== undefined) { Proof.encode(message.proof, writer.uint32(18).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): ValueOp { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseValueOp(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.key = reader.bytes(); break; case 2: message.proof = Proof.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): ValueOp { const message = createBaseValueOp(); message.key = object.key ?? new Uint8Array(); message.proof = object.proof !== undefined && object.proof !== null ? Proof.fromPartial(object.proof) : undefined; return message; } }; function createBaseDominoOp(): DominoOp { return { key: "", input: "", output: "" }; } export const DominoOp = { encode(message: DominoOp, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.key !== "") { writer.uint32(10).string(message.key); } if (message.input !== "") { writer.uint32(18).string(message.input); } if (message.output !== "") { writer.uint32(26).string(message.output); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): DominoOp { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseDominoOp(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.key = reader.string(); break; case 2: message.input = reader.string(); break; case 3: message.output = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): DominoOp { const message = createBaseDominoOp(); message.key = object.key ?? ""; message.input = object.input ?? ""; message.output = object.output ?? ""; return message; } }; function createBaseProofOp(): ProofOp { return { type: "", key: new Uint8Array(), data: new Uint8Array() }; } export const ProofOp = { encode(message: ProofOp, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.type !== "") { writer.uint32(10).string(message.type); } if (message.key.length !== 0) { writer.uint32(18).bytes(message.key); } if (message.data.length !== 0) { writer.uint32(26).bytes(message.data); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): ProofOp { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseProofOp(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.type = reader.string(); break; case 2: message.key = reader.bytes(); break; case 3: message.data = reader.bytes(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): ProofOp { const message = createBaseProofOp(); message.type = object.type ?? ""; message.key = object.key ?? new Uint8Array(); message.data = object.data ?? new Uint8Array(); return message; } }; function createBaseProofOps(): ProofOps { return { ops: [] }; } export const ProofOps = { encode(message: ProofOps, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.ops) { ProofOp.encode(v!, writer.uint32(10).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): ProofOps { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseProofOps(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.ops.push(ProofOp.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); break; } } return message; }, fromPartial(object: DeepPartial): ProofOps { const message = createBaseProofOps(); message.ops = object.ops?.map(e => ProofOp.fromPartial(e)) || []; return message; } };