/** * ManagedCoin is built to make a simple walkthrough of the Coins module. * It contains scripts you will need to initialize, mint, burn, transfer coins. * By utilizing this current module, a developer can create his own coin and care less about mint and burn capabilities, * * **Module ID:** `0x1::managed_coin` * * @module */ import type * as p from "@movingco/prelude"; /** * Capabilities resource storing mint and burn capabilities. * The resource is stored on the account that initialized coin `CoinType`. * * Type name: `0x1::managed_coin::Capabilities` */ export interface ICapabilities { burn_cap: { dummy_field: boolean; }; freeze_cap: { dummy_field: boolean; }; mint_cap: { dummy_field: boolean; }; } /** Payload arguments for {@link entry.burn}. */ export declare type BurnArgs = { args: { /** IDL type: `U64` */ amount: p.U64; }; typeArgs: { CoinType: string; }; }; /** Payload arguments for {@link entry.initialize}. */ export declare type InitializeArgs = { args: { /** IDL type: `Vector(U8)` */ name: p.ByteString; /** IDL type: `Vector(U8)` */ symbol: p.ByteString; /** IDL type: `U8` */ decimals: number; /** IDL type: `Bool` */ monitor_supply: boolean; }; typeArgs: { CoinType: string; }; }; /** Payload arguments for {@link entry.mint}. */ export declare type MintArgs = { args: { /** IDL type: `Address` */ dst_addr: p.RawAddress; /** IDL type: `U64` */ amount: p.U64; }; typeArgs: { CoinType: string; }; }; /** Payload arguments for {@link entry.register}. */ export declare type RegisterArgs = { typeArgs: { CoinType: string; }; }; export * as entry from "./entry.js"; export * as entryNames from "./entryNames.js"; export { idl } from "./idl.js"; export * as payloads from "./payloads.js"; /** The address of the module. */ export declare const ADDRESS: "0x1"; /** The full module name. */ export declare const FULL_NAME: "0x1::managed_coin"; /** The name of the module. */ export declare const NAME: "managed_coin"; /** Module ID information. */ export declare const id: { readonly ADDRESS: "0x1"; readonly FULL_NAME: "0x1::managed_coin"; readonly NAME: "managed_coin"; }; export * as errors from "./errors.js"; /** Module error codes. */ export declare const errorCodes: { readonly "1": { readonly name: "ENO_CAPABILITIES"; readonly doc: "Account has no capabilities (burn/mint)."; }; }; /** All module function IDLs. */ export declare const functions: { readonly burn: { readonly name: "burn"; readonly doc: "Withdraw an `amount` of coin `CoinType` from `account` and burn it."; readonly ty_args: readonly ["CoinType"]; readonly args: readonly [{ readonly name: "amount"; readonly ty: "u64"; }]; }; readonly initialize: { readonly name: "initialize"; readonly doc: "Initialize new coin `CoinType` in Aptos Blockchain.\nMint and Burn Capabilities will be stored under `account` in `Capabilities` resource."; readonly ty_args: readonly ["CoinType"]; readonly args: readonly [{ readonly name: "name"; readonly ty: { readonly vector: "u8"; }; }, { readonly name: "symbol"; readonly ty: { readonly vector: "u8"; }; }, { readonly name: "decimals"; readonly ty: "u8"; }, { readonly name: "monitor_supply"; readonly ty: "bool"; }]; }; readonly mint: { readonly name: "mint"; readonly doc: "Create new coins `CoinType` and deposit them into dst_addr's account."; readonly ty_args: readonly ["CoinType"]; readonly args: readonly [{ readonly name: "dst_addr"; readonly ty: "address"; }, { readonly name: "amount"; readonly ty: "u64"; }]; }; readonly register: { readonly name: "register"; readonly doc: "Creating a resource that stores balance of `CoinType` on user's account, withdraw and deposit event handlers.\nRequired if user wants to start accepting deposits of `CoinType` in his account."; readonly ty_args: readonly ["CoinType"]; readonly args: readonly []; }; }; /** All struct types with ability `key`. */ export declare const resources: { readonly Capabilities: "0x1::managed_coin::Capabilities"; }; /** All struct types. */ export declare const structs: { readonly Capabilities: "0x1::managed_coin::Capabilities"; }; /** * ManagedCoin is built to make a simple walkthrough of the Coins module. * It contains scripts you will need to initialize, mint, burn, transfer coins. * By utilizing this current module, a developer can create his own coin and care less about mint and burn capabilities, */ export declare const moduleDefinition: { readonly errorCodes: { readonly "1": { readonly name: "ENO_CAPABILITIES"; readonly doc: "Account has no capabilities (burn/mint)."; }; }; readonly functions: { readonly burn: { readonly name: "burn"; readonly doc: "Withdraw an `amount` of coin `CoinType` from `account` and burn it."; readonly ty_args: readonly ["CoinType"]; readonly args: readonly [{ readonly name: "amount"; readonly ty: "u64"; }]; }; readonly initialize: { readonly name: "initialize"; readonly doc: "Initialize new coin `CoinType` in Aptos Blockchain.\nMint and Burn Capabilities will be stored under `account` in `Capabilities` resource."; readonly ty_args: readonly ["CoinType"]; readonly args: readonly [{ readonly name: "name"; readonly ty: { readonly vector: "u8"; }; }, { readonly name: "symbol"; readonly ty: { readonly vector: "u8"; }; }, { readonly name: "decimals"; readonly ty: "u8"; }, { readonly name: "monitor_supply"; readonly ty: "bool"; }]; }; readonly mint: { readonly name: "mint"; readonly doc: "Create new coins `CoinType` and deposit them into dst_addr's account."; readonly ty_args: readonly ["CoinType"]; readonly args: readonly [{ readonly name: "dst_addr"; readonly ty: "address"; }, { readonly name: "amount"; readonly ty: "u64"; }]; }; readonly register: { readonly name: "register"; readonly doc: "Creating a resource that stores balance of `CoinType` on user's account, withdraw and deposit event handlers.\nRequired if user wants to start accepting deposits of `CoinType` in his account."; readonly ty_args: readonly ["CoinType"]; readonly args: readonly []; }; }; readonly resources: { readonly Capabilities: "0x1::managed_coin::Capabilities"; }; readonly structs: { readonly Capabilities: "0x1::managed_coin::Capabilities"; }; readonly ADDRESS: "0x1"; readonly FULL_NAME: "0x1::managed_coin"; readonly NAME: "managed_coin"; }; //# sourceMappingURL=index.d.ts.map