/* eslint-disable */ import _m0 from "protobufjs/minimal"; import { Any } from "../../../google/protobuf/any"; import { Grant } from "./authz"; export const protobufPackage = "cosmos.authz.v1beta1"; /** Since: cosmos-sdk 0.43 */ /** * MsgGrant is a request type for Grant method. It declares authorization to the grantee * on behalf of the granter with the provided expiration time. */ export interface MsgGrant { granter: string; grantee: string; grant: Grant | undefined; } /** MsgExecResponse defines the Msg/MsgExecResponse response type. */ export interface MsgExecResponse { results: Uint8Array[]; } /** * MsgExec attempts to execute the provided messages using * authorizations granted to the grantee. Each message should have only * one signer corresponding to the granter of the authorization. */ export interface MsgExec { grantee: string; /** * Authorization Msg requests to execute. Each msg must implement Authorization interface * The x/authz will try to find a grant matching (msg.signers[0], grantee, MsgTypeURL(msg)) * triple and validate it. */ msgs: Any[]; } /** MsgGrantResponse defines the Msg/MsgGrant response type. */ export interface MsgGrantResponse { } /** * MsgRevoke revokes any authorization with the provided sdk.Msg type on the * granter's account with that has been granted to the grantee. */ export interface MsgRevoke { granter: string; grantee: string; msgTypeUrl: string; } /** MsgRevokeResponse defines the Msg/MsgRevokeResponse response type. */ export interface MsgRevokeResponse { } function createBaseMsgGrant(): MsgGrant { return { granter: "", grantee: "", grant: undefined }; } export const MsgGrant = { encode(message: MsgGrant, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.granter !== "") { writer.uint32(10).string(message.granter); } if (message.grantee !== "") { writer.uint32(18).string(message.grantee); } if (message.grant !== undefined) { Grant.encode(message.grant, writer.uint32(26).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgGrant { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgGrant(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.granter = reader.string(); break; case 2: message.grantee = reader.string(); break; case 3: message.grant = Grant.decode(reader, reader.uint32()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromJSON(object: any): MsgGrant { return { granter: isSet(object.granter) ? String(object.granter) : "", grantee: isSet(object.grantee) ? String(object.grantee) : "", grant: isSet(object.grant) ? Grant.fromJSON(object.grant) : undefined, }; }, toJSON(message: MsgGrant): unknown { const obj: any = {}; message.granter !== undefined && (obj.granter = message.granter); message.grantee !== undefined && (obj.grantee = message.grantee); message.grant !== undefined && (obj.grant = message.grant ? Grant.toJSON(message.grant) : undefined); return obj; }, fromPartial, I>>(object: I): MsgGrant { const message = createBaseMsgGrant(); message.granter = object.granter ?? ""; message.grantee = object.grantee ?? ""; message.grant = (object.grant !== undefined && object.grant !== null) ? Grant.fromPartial(object.grant) : undefined; return message; }, }; function createBaseMsgExecResponse(): MsgExecResponse { return { results: [] }; } export const MsgExecResponse = { encode(message: MsgExecResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { for (const v of message.results) { writer.uint32(10).bytes(v!); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgExecResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgExecResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.results.push(reader.bytes()); break; default: reader.skipType(tag & 7); break; } } return message; }, fromJSON(object: any): MsgExecResponse { return { results: Array.isArray(object?.results) ? object.results.map((e: any) => bytesFromBase64(e)) : [] }; }, toJSON(message: MsgExecResponse): unknown { const obj: any = {}; if (message.results) { obj.results = message.results.map((e) => base64FromBytes(e !== undefined ? e : new Uint8Array())); } else { obj.results = []; } return obj; }, fromPartial, I>>(object: I): MsgExecResponse { const message = createBaseMsgExecResponse(); message.results = object.results?.map((e) => e) || []; return message; }, }; function createBaseMsgExec(): MsgExec { return { grantee: "", msgs: [] }; } export const MsgExec = { encode(message: MsgExec, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.grantee !== "") { writer.uint32(10).string(message.grantee); } for (const v of message.msgs) { Any.encode(v!, writer.uint32(18).fork()).ldelim(); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgExec { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgExec(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.grantee = reader.string(); break; case 2: message.msgs.push(Any.decode(reader, reader.uint32())); break; default: reader.skipType(tag & 7); break; } } return message; }, fromJSON(object: any): MsgExec { return { grantee: isSet(object.grantee) ? String(object.grantee) : "", msgs: Array.isArray(object?.msgs) ? object.msgs.map((e: any) => Any.fromJSON(e)) : [], }; }, toJSON(message: MsgExec): unknown { const obj: any = {}; message.grantee !== undefined && (obj.grantee = message.grantee); if (message.msgs) { obj.msgs = message.msgs.map((e) => e ? Any.toJSON(e) : undefined); } else { obj.msgs = []; } return obj; }, fromPartial, I>>(object: I): MsgExec { const message = createBaseMsgExec(); message.grantee = object.grantee ?? ""; message.msgs = object.msgs?.map((e) => Any.fromPartial(e)) || []; return message; }, }; function createBaseMsgGrantResponse(): MsgGrantResponse { return {}; } export const MsgGrantResponse = { encode(_: MsgGrantResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgGrantResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgGrantResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromJSON(_: any): MsgGrantResponse { return {}; }, toJSON(_: MsgGrantResponse): unknown { const obj: any = {}; return obj; }, fromPartial, I>>(_: I): MsgGrantResponse { const message = createBaseMsgGrantResponse(); return message; }, }; function createBaseMsgRevoke(): MsgRevoke { return { granter: "", grantee: "", msgTypeUrl: "" }; } export const MsgRevoke = { encode(message: MsgRevoke, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { if (message.granter !== "") { writer.uint32(10).string(message.granter); } if (message.grantee !== "") { writer.uint32(18).string(message.grantee); } if (message.msgTypeUrl !== "") { writer.uint32(26).string(message.msgTypeUrl); } return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgRevoke { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgRevoke(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { case 1: message.granter = reader.string(); break; case 2: message.grantee = reader.string(); break; case 3: message.msgTypeUrl = reader.string(); break; default: reader.skipType(tag & 7); break; } } return message; }, fromJSON(object: any): MsgRevoke { return { granter: isSet(object.granter) ? String(object.granter) : "", grantee: isSet(object.grantee) ? String(object.grantee) : "", msgTypeUrl: isSet(object.msgTypeUrl) ? String(object.msgTypeUrl) : "", }; }, toJSON(message: MsgRevoke): unknown { const obj: any = {}; message.granter !== undefined && (obj.granter = message.granter); message.grantee !== undefined && (obj.grantee = message.grantee); message.msgTypeUrl !== undefined && (obj.msgTypeUrl = message.msgTypeUrl); return obj; }, fromPartial, I>>(object: I): MsgRevoke { const message = createBaseMsgRevoke(); message.granter = object.granter ?? ""; message.grantee = object.grantee ?? ""; message.msgTypeUrl = object.msgTypeUrl ?? ""; return message; }, }; function createBaseMsgRevokeResponse(): MsgRevokeResponse { return {}; } export const MsgRevokeResponse = { encode(_: MsgRevokeResponse, writer: _m0.Writer = _m0.Writer.create()): _m0.Writer { return writer; }, decode(input: _m0.Reader | Uint8Array, length?: number): MsgRevokeResponse { const reader = input instanceof _m0.Reader ? input : new _m0.Reader(input); let end = length === undefined ? reader.len : reader.pos + length; const message = createBaseMsgRevokeResponse(); while (reader.pos < end) { const tag = reader.uint32(); switch (tag >>> 3) { default: reader.skipType(tag & 7); break; } } return message; }, fromJSON(_: any): MsgRevokeResponse { return {}; }, toJSON(_: MsgRevokeResponse): unknown { const obj: any = {}; return obj; }, fromPartial, I>>(_: I): MsgRevokeResponse { const message = createBaseMsgRevokeResponse(); return message; }, }; /** Msg defines the authz Msg service. */ export interface Msg { /** * Grant grants the provided authorization to the grantee on the granter's * account with the provided expiration time. If there is already a grant * for the given (granter, grantee, Authorization) triple, then the grant * will be overwritten. */ Grant(request: MsgGrant): Promise; /** * Exec attempts to execute the provided messages using * authorizations granted to the grantee. Each message should have only * one signer corresponding to the granter of the authorization. */ Exec(request: MsgExec): Promise; /** * Revoke revokes any authorization corresponding to the provided method name on the * granter's account that has been granted to the grantee. */ Revoke(request: MsgRevoke): Promise; } export class MsgClientImpl implements Msg { private readonly rpc: Rpc; constructor(rpc: Rpc) { this.rpc = rpc; this.Grant = this.Grant.bind(this); this.Exec = this.Exec.bind(this); this.Revoke = this.Revoke.bind(this); } Grant(request: MsgGrant): Promise { const data = MsgGrant.encode(request).finish(); const promise = this.rpc.request("cosmos.authz.v1beta1.Msg", "Grant", data); return promise.then((data) => MsgGrantResponse.decode(new _m0.Reader(data))); } Exec(request: MsgExec): Promise { const data = MsgExec.encode(request).finish(); const promise = this.rpc.request("cosmos.authz.v1beta1.Msg", "Exec", data); return promise.then((data) => MsgExecResponse.decode(new _m0.Reader(data))); } Revoke(request: MsgRevoke): Promise { const data = MsgRevoke.encode(request).finish(); const promise = this.rpc.request("cosmos.authz.v1beta1.Msg", "Revoke", data); return promise.then((data) => MsgRevokeResponse.decode(new _m0.Reader(data))); } } interface Rpc { request(service: string, method: string, data: Uint8Array): Promise; } declare var self: any | undefined; declare var window: any | undefined; declare var global: 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"; })(); function bytesFromBase64(b64: string): Uint8Array { if (globalThis.Buffer) { return Uint8Array.from(globalThis.Buffer.from(b64, "base64")); } else { const bin = globalThis.atob(b64); const arr = new Uint8Array(bin.length); for (let i = 0; i < bin.length; ++i) { arr[i] = bin.charCodeAt(i); } return arr; } } function base64FromBytes(arr: Uint8Array): string { if (globalThis.Buffer) { return globalThis.Buffer.from(arr).toString("base64"); } else { const bin: string[] = []; arr.forEach((byte) => { bin.push(String.fromCharCode(byte)); }); return globalThis.btoa(bin.join("")); } } type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined; export type DeepPartial = T extends Builtin ? T : T extends Array ? 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; }