import { Coin } from "@cosmjs/launchpad"; import { Cw1CosmWasmClient } from "./cw1cosmwasmclient"; import { Expiration } from "./interfaces"; import { ExecuteResult } from "./signingcosmwasmclient"; /** * @see https://github.com/CosmWasm/cosmwasm-plus/blob/v0.3.2/contracts/cw1-subkeys/src/msg.rs#L88 */ export interface Cw1SubkeyAllowanceInfo { readonly balance: readonly Coin[]; readonly expires: Expiration; } /** * @see https://github.com/CosmWasm/cosmwasm-plus/blob/v0.3.2/contracts/cw1-subkeys/src/state.rs#L15 */ export interface Cw1SubkeyPermissions { readonly delegate: boolean; readonly redelegate: boolean; readonly undelegate: boolean; readonly withdraw: boolean; } /** * @see https://github.com/CosmWasm/cosmwasm-plus/blob/v0.3.2/contracts/cw1-subkeys/src/msg.rs#L95 */ export interface Cw1SubkeyPermissionsInfo { /** Spender address */ readonly spender: string; readonly permissions: readonly Cw1SubkeyPermissions[]; } export declare class Cw1SubkeyCosmWasmClient extends Cw1CosmWasmClient { private setAdmins; getAdmins(): Promise; isAdmin(address?: string): Promise; getAllAllowances(): Promise; getAllowance(address?: string): Promise; getAllPermissions(): Promise; getPermissions(address?: string): Promise; addAdmin(address: string, memo?: string): Promise; removeAdmin(address: string, memo?: string): Promise; increaseAllowance(address: string, amount: Coin, expires?: Expiration, memo?: string): Promise; decreaseAllowance(address: string, amount: Coin, expires?: Expiration, memo?: string): Promise; setPermissions(address: string, permissions: Cw1SubkeyPermissions, memo?: string): Promise; }