export declare const eRC20MintBurnUpgradeable: readonly [{
    readonly type: "impl";
    readonly name: "ERC20MetadataImpl";
    readonly interface_name: "openzeppelin_token::erc20::interface::IERC20Metadata";
}, {
    readonly type: "struct";
    readonly name: "core::byte_array::ByteArray";
    readonly members: readonly [{
        readonly name: "data";
        readonly type: "core::array::Array::<core::bytes_31::bytes31>";
    }, {
        readonly name: "pending_word";
        readonly type: "core::felt252";
    }, {
        readonly name: "pending_word_len";
        readonly type: "core::internal::bounded_int::BoundedInt::<0, 30>";
    }];
}, {
    readonly type: "interface";
    readonly name: "openzeppelin_token::erc20::interface::IERC20Metadata";
    readonly items: readonly [{
        readonly type: "function";
        readonly name: "name";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "core::byte_array::ByteArray";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "symbol";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "core::byte_array::ByteArray";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "decimals";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "core::integer::u8";
        }];
        readonly state_mutability: "view";
    }];
}, {
    readonly type: "impl";
    readonly name: "MintableTokenImpl";
    readonly interface_name: "oft_mint_burn::interface::IMintableToken";
}, {
    readonly type: "struct";
    readonly name: "core::integer::u256";
    readonly members: readonly [{
        readonly name: "low";
        readonly type: "core::integer::u128";
    }, {
        readonly name: "high";
        readonly type: "core::integer::u128";
    }];
}, {
    readonly type: "interface";
    readonly name: "oft_mint_burn::interface::IMintableToken";
    readonly items: readonly [{
        readonly type: "function";
        readonly name: "permissioned_mint";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "amount";
            readonly type: "core::integer::u256";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "permissioned_burn";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "amount";
            readonly type: "core::integer::u256";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }];
}, {
    readonly type: "impl";
    readonly name: "ERC20MintBurnUpgradeableImpl";
    readonly interface_name: "oft_mint_burn::erc20_mint_burn_upgradeable::interface::IERC20MintBurnUpgradeable";
}, {
    readonly type: "struct";
    readonly name: "core::array::Span::<core::felt252>";
    readonly members: readonly [{
        readonly name: "snapshot";
        readonly type: "@core::array::Array::<core::felt252>";
    }];
}, {
    readonly type: "enum";
    readonly name: "layerzero::oapps::common::allow_list::interface::AllowlistMode";
    readonly variants: readonly [{
        readonly name: "Open";
        readonly type: "()";
    }, {
        readonly name: "Blacklist";
        readonly type: "()";
    }, {
        readonly name: "Whitelist";
        readonly type: "()";
    }];
}, {
    readonly type: "struct";
    readonly name: "core::array::Span::<core::starknet::contract_address::ContractAddress>";
    readonly members: readonly [{
        readonly name: "snapshot";
        readonly type: "@core::array::Array::<core::starknet::contract_address::ContractAddress>";
    }];
}, {
    readonly type: "enum";
    readonly name: "core::bool";
    readonly variants: readonly [{
        readonly name: "False";
        readonly type: "()";
    }, {
        readonly name: "True";
        readonly type: "()";
    }];
}, {
    readonly type: "interface";
    readonly name: "oft_mint_burn::erc20_mint_burn_upgradeable::interface::IERC20MintBurnUpgradeable";
    readonly items: readonly [{
        readonly type: "function";
        readonly name: "upgrade";
        readonly inputs: readonly [{
            readonly name: "new_class_hash";
            readonly type: "core::starknet::class_hash::ClassHash";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "upgrade_and_call";
        readonly inputs: readonly [{
            readonly name: "new_class_hash";
            readonly type: "core::starknet::class_hash::ClassHash";
        }, {
            readonly name: "selector";
            readonly type: "core::felt252";
        }, {
            readonly name: "calldata";
            readonly type: "core::array::Span::<core::felt252>";
        }];
        readonly outputs: readonly [{
            readonly type: "core::array::Span::<core::felt252>";
        }];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "pause";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "unpause";
        readonly inputs: readonly [];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "set_allowlist_mode";
        readonly inputs: readonly [{
            readonly name: "mode";
            readonly type: "layerzero::oapps::common::allow_list::interface::AllowlistMode";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "set_whitelisted";
        readonly inputs: readonly [{
            readonly name: "users";
            readonly type: "core::array::Span::<core::starknet::contract_address::ContractAddress>";
        }, {
            readonly name: "status";
            readonly type: "core::bool";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "set_blacklisted";
        readonly inputs: readonly [{
            readonly name: "users";
            readonly type: "core::array::Span::<core::starknet::contract_address::ContractAddress>";
        }, {
            readonly name: "status";
            readonly type: "core::bool";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }];
}, {
    readonly type: "impl";
    readonly name: "ERC20Impl";
    readonly interface_name: "openzeppelin_token::erc20::interface::IERC20";
}, {
    readonly type: "interface";
    readonly name: "openzeppelin_token::erc20::interface::IERC20";
    readonly items: readonly [{
        readonly type: "function";
        readonly name: "total_supply";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "core::integer::u256";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "balance_of";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [{
            readonly type: "core::integer::u256";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "allowance";
        readonly inputs: readonly [{
            readonly name: "owner";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "spender";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [{
            readonly type: "core::integer::u256";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "transfer";
        readonly inputs: readonly [{
            readonly name: "recipient";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "amount";
            readonly type: "core::integer::u256";
        }];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "transfer_from";
        readonly inputs: readonly [{
            readonly name: "sender";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "recipient";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "amount";
            readonly type: "core::integer::u256";
        }];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "approve";
        readonly inputs: readonly [{
            readonly name: "spender";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "amount";
            readonly type: "core::integer::u256";
        }];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "external";
    }];
}, {
    readonly type: "impl";
    readonly name: "ERC20CamelOnlyImpl";
    readonly interface_name: "openzeppelin_token::erc20::interface::IERC20CamelOnly";
}, {
    readonly type: "interface";
    readonly name: "openzeppelin_token::erc20::interface::IERC20CamelOnly";
    readonly items: readonly [{
        readonly type: "function";
        readonly name: "totalSupply";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "core::integer::u256";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "balanceOf";
        readonly inputs: readonly [{
            readonly name: "account";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [{
            readonly type: "core::integer::u256";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "transferFrom";
        readonly inputs: readonly [{
            readonly name: "sender";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "recipient";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }, {
            readonly name: "amount";
            readonly type: "core::integer::u256";
        }];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "external";
    }];
}, {
    readonly type: "impl";
    readonly name: "AccessControlImpl";
    readonly interface_name: "openzeppelin_access::accesscontrol::interface::IAccessControl";
}, {
    readonly type: "interface";
    readonly name: "openzeppelin_access::accesscontrol::interface::IAccessControl";
    readonly items: readonly [{
        readonly type: "function";
        readonly name: "has_role";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "core::felt252";
        }, {
            readonly name: "account";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "get_role_admin";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "core::felt252";
        }];
        readonly outputs: readonly [{
            readonly type: "core::felt252";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "grant_role";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "core::felt252";
        }, {
            readonly name: "account";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "revoke_role";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "core::felt252";
        }, {
            readonly name: "account";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }, {
        readonly type: "function";
        readonly name: "renounce_role";
        readonly inputs: readonly [{
            readonly name: "role";
            readonly type: "core::felt252";
        }, {
            readonly name: "account";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [];
        readonly state_mutability: "external";
    }];
}, {
    readonly type: "impl";
    readonly name: "PausableImpl";
    readonly interface_name: "openzeppelin_security::interface::IPausable";
}, {
    readonly type: "interface";
    readonly name: "openzeppelin_security::interface::IPausable";
    readonly items: readonly [{
        readonly type: "function";
        readonly name: "is_paused";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "view";
    }];
}, {
    readonly type: "impl";
    readonly name: "AllowlistImpl";
    readonly interface_name: "layerzero::oapps::common::allow_list::interface::IAllowlist";
}, {
    readonly type: "interface";
    readonly name: "layerzero::oapps::common::allow_list::interface::IAllowlist";
    readonly items: readonly [{
        readonly type: "function";
        readonly name: "allowlist_mode";
        readonly inputs: readonly [];
        readonly outputs: readonly [{
            readonly type: "layerzero::oapps::common::allow_list::interface::AllowlistMode";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "is_user_allowlisted";
        readonly inputs: readonly [{
            readonly name: "user";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "blacklisted";
        readonly inputs: readonly [{
            readonly name: "user";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "view";
    }, {
        readonly type: "function";
        readonly name: "whitelisted";
        readonly inputs: readonly [{
            readonly name: "user";
            readonly type: "core::starknet::contract_address::ContractAddress";
        }];
        readonly outputs: readonly [{
            readonly type: "core::bool";
        }];
        readonly state_mutability: "view";
    }];
}, {
    readonly type: "constructor";
    readonly name: "constructor";
    readonly inputs: readonly [{
        readonly name: "name";
        readonly type: "core::byte_array::ByteArray";
    }, {
        readonly name: "symbol";
        readonly type: "core::byte_array::ByteArray";
    }, {
        readonly name: "decimals";
        readonly type: "core::integer::u8";
    }, {
        readonly name: "default_admin";
        readonly type: "core::starknet::contract_address::ContractAddress";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_token::erc20::erc20::ERC20Component::Transfer";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "from";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "key";
    }, {
        readonly name: "to";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "key";
    }, {
        readonly name: "value";
        readonly type: "core::integer::u256";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_token::erc20::erc20::ERC20Component::Approval";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "owner";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "key";
    }, {
        readonly name: "spender";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "key";
    }, {
        readonly name: "value";
        readonly type: "core::integer::u256";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_token::erc20::erc20::ERC20Component::Event";
    readonly kind: "enum";
    readonly variants: readonly [{
        readonly name: "Transfer";
        readonly type: "openzeppelin_token::erc20::erc20::ERC20Component::Transfer";
        readonly kind: "nested";
    }, {
        readonly name: "Approval";
        readonly type: "openzeppelin_token::erc20::erc20::ERC20Component::Approval";
        readonly kind: "nested";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_upgrades::upgradeable::UpgradeableComponent::Upgraded";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "class_hash";
        readonly type: "core::starknet::class_hash::ClassHash";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_upgrades::upgradeable::UpgradeableComponent::Event";
    readonly kind: "enum";
    readonly variants: readonly [{
        readonly name: "Upgraded";
        readonly type: "openzeppelin_upgrades::upgradeable::UpgradeableComponent::Upgraded";
        readonly kind: "nested";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::RoleGranted";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "role";
        readonly type: "core::felt252";
        readonly kind: "data";
    }, {
        readonly name: "account";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "data";
    }, {
        readonly name: "sender";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::RoleGrantedWithDelay";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "role";
        readonly type: "core::felt252";
        readonly kind: "data";
    }, {
        readonly name: "account";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "data";
    }, {
        readonly name: "sender";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "data";
    }, {
        readonly name: "delay";
        readonly type: "core::integer::u64";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::RoleRevoked";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "role";
        readonly type: "core::felt252";
        readonly kind: "data";
    }, {
        readonly name: "account";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "data";
    }, {
        readonly name: "sender";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::RoleAdminChanged";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "role";
        readonly type: "core::felt252";
        readonly kind: "data";
    }, {
        readonly name: "previous_admin_role";
        readonly type: "core::felt252";
        readonly kind: "data";
    }, {
        readonly name: "new_admin_role";
        readonly type: "core::felt252";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::Event";
    readonly kind: "enum";
    readonly variants: readonly [{
        readonly name: "RoleGranted";
        readonly type: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::RoleGranted";
        readonly kind: "nested";
    }, {
        readonly name: "RoleGrantedWithDelay";
        readonly type: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::RoleGrantedWithDelay";
        readonly kind: "nested";
    }, {
        readonly name: "RoleRevoked";
        readonly type: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::RoleRevoked";
        readonly kind: "nested";
    }, {
        readonly name: "RoleAdminChanged";
        readonly type: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::RoleAdminChanged";
        readonly kind: "nested";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_introspection::src5::SRC5Component::Event";
    readonly kind: "enum";
    readonly variants: readonly [];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_security::pausable::PausableComponent::Paused";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "account";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_security::pausable::PausableComponent::Unpaused";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "account";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "openzeppelin_security::pausable::PausableComponent::Event";
    readonly kind: "enum";
    readonly variants: readonly [{
        readonly name: "Paused";
        readonly type: "openzeppelin_security::pausable::PausableComponent::Paused";
        readonly kind: "nested";
    }, {
        readonly name: "Unpaused";
        readonly type: "openzeppelin_security::pausable::PausableComponent::Unpaused";
        readonly kind: "nested";
    }];
}, {
    readonly type: "event";
    readonly name: "layerzero::oapps::common::allow_list::events::AllowlistModeUpdated";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "mode";
        readonly type: "layerzero::oapps::common::allow_list::interface::AllowlistMode";
        readonly kind: "key";
    }];
}, {
    readonly type: "event";
    readonly name: "layerzero::oapps::common::allow_list::events::WhitelistUpdated";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "user";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "key";
    }, {
        readonly name: "status";
        readonly type: "core::bool";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "layerzero::oapps::common::allow_list::events::BlacklistUpdated";
    readonly kind: "struct";
    readonly members: readonly [{
        readonly name: "user";
        readonly type: "core::starknet::contract_address::ContractAddress";
        readonly kind: "key";
    }, {
        readonly name: "status";
        readonly type: "core::bool";
        readonly kind: "data";
    }];
}, {
    readonly type: "event";
    readonly name: "layerzero::oapps::common::allow_list::allow_list::AllowlistComponent::Event";
    readonly kind: "enum";
    readonly variants: readonly [{
        readonly name: "AllowlistModeUpdated";
        readonly type: "layerzero::oapps::common::allow_list::events::AllowlistModeUpdated";
        readonly kind: "nested";
    }, {
        readonly name: "WhitelistUpdated";
        readonly type: "layerzero::oapps::common::allow_list::events::WhitelistUpdated";
        readonly kind: "nested";
    }, {
        readonly name: "BlacklistUpdated";
        readonly type: "layerzero::oapps::common::allow_list::events::BlacklistUpdated";
        readonly kind: "nested";
    }];
}, {
    readonly type: "event";
    readonly name: "oft_mint_burn::erc20_mint_burn_upgradeable::erc20_mint_burn_upgradeable::ERC20MintBurnUpgradeable::Event";
    readonly kind: "enum";
    readonly variants: readonly [{
        readonly name: "ERC20Event";
        readonly type: "openzeppelin_token::erc20::erc20::ERC20Component::Event";
        readonly kind: "flat";
    }, {
        readonly name: "UpgradeableEvent";
        readonly type: "openzeppelin_upgrades::upgradeable::UpgradeableComponent::Event";
        readonly kind: "flat";
    }, {
        readonly name: "AccessControlEvent";
        readonly type: "openzeppelin_access::accesscontrol::accesscontrol::AccessControlComponent::Event";
        readonly kind: "flat";
    }, {
        readonly name: "SRC5Event";
        readonly type: "openzeppelin_introspection::src5::SRC5Component::Event";
        readonly kind: "flat";
    }, {
        readonly name: "PausableEvent";
        readonly type: "openzeppelin_security::pausable::PausableComponent::Event";
        readonly kind: "flat";
    }, {
        readonly name: "AllowlistEvent";
        readonly type: "layerzero::oapps::common::allow_list::allow_list::AllowlistComponent::Event";
        readonly kind: "flat";
    }];
}];
//# sourceMappingURL=e-r-c20-mint-burn-upgradeable.d.ts.map