@medialane/sdk 0.43.0 → 0.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.cjs CHANGED
@@ -4637,6 +4637,3887 @@ var IPNftABI = [
4637
4637
  // src/abis/creatorCoinFactory.ts
4638
4638
  var CreatorCoinFactoryABI = [{ "type": "impl", "name": "FactoryImpl", "interface_name": "creator_coin::factory::interface::IFactory" }, { "type": "struct", "name": "core::integer::u256", "members": [{ "name": "low", "type": "core::integer::u128" }, { "name": "high", "type": "core::integer::u128" }] }, { "type": "struct", "name": "core::array::Span::<core::starknet::contract_address::ContractAddress>", "members": [{ "name": "snapshot", "type": "@core::array::Array::<core::starknet::contract_address::ContractAddress>" }] }, { "type": "struct", "name": "core::array::Span::<core::integer::u256>", "members": [{ "name": "snapshot", "type": "@core::array::Array::<core::integer::u256>" }] }, { "type": "struct", "name": "creator_coin::factory::LaunchParameters", "members": [{ "name": "creator_coin_address", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "transfer_restriction_delay", "type": "core::integer::u64" }, { "name": "max_percentage_buy_launch", "type": "core::integer::u16" }, { "name": "quote_address", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "initial_holders", "type": "core::array::Span::<core::starknet::contract_address::ContractAddress>" }, { "name": "initial_holders_amounts", "type": "core::array::Span::<core::integer::u256>" }] }, { "type": "enum", "name": "core::bool", "variants": [{ "name": "False", "type": "()" }, { "name": "True", "type": "()" }] }, { "type": "struct", "name": "ekubo::types::i129::i129", "members": [{ "name": "mag", "type": "core::integer::u128" }, { "name": "sign", "type": "core::bool" }] }, { "type": "struct", "name": "creator_coin::exchanges::ekubo::ekubo_adapter::EkuboPoolParameters", "members": [{ "name": "fee", "type": "core::integer::u128" }, { "name": "tick_spacing", "type": "core::integer::u128" }, { "name": "starting_price", "type": "ekubo::types::i129::i129" }, { "name": "bound", "type": "core::integer::u128" }] }, { "type": "struct", "name": "ekubo::types::keys::PoolKey", "members": [{ "name": "token0", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "token1", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "fee", "type": "core::integer::u128" }, { "name": "tick_spacing", "type": "core::integer::u128" }, { "name": "extension", "type": "core::starknet::contract_address::ContractAddress" }] }, { "type": "struct", "name": "ekubo::types::bounds::Bounds", "members": [{ "name": "lower", "type": "ekubo::types::i129::i129" }, { "name": "upper", "type": "ekubo::types::i129::i129" }] }, { "type": "struct", "name": "creator_coin::exchanges::ekubo::launcher::EkuboLP", "members": [{ "name": "owner", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "quote_address", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "pool_key", "type": "ekubo::types::keys::PoolKey" }, { "name": "bounds", "type": "ekubo::types::bounds::Bounds" }] }, { "type": "enum", "name": "creator_coin::exchanges::SupportedExchanges", "variants": [{ "name": "Jediswap", "type": "()" }, { "name": "Ekubo", "type": "()" }, { "name": "Starkdefi", "type": "()" }] }, { "type": "enum", "name": "creator_coin::token::creator_coin::LiquidityType", "variants": [{ "name": "JediERC20", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "StarkDeFiERC20", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "EkuboNFT", "type": "core::integer::u64" }] }, { "type": "enum", "name": "core::option::Option::<(core::starknet::contract_address::ContractAddress, creator_coin::token::creator_coin::LiquidityType)>", "variants": [{ "name": "Some", "type": "(core::starknet::contract_address::ContractAddress, creator_coin::token::creator_coin::LiquidityType)" }, { "name": "None", "type": "()" }] }, { "type": "interface", "name": "creator_coin::factory::interface::IFactory", "items": [{ "type": "function", "name": "create_creator_coin", "inputs": [{ "name": "owner", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "name", "type": "core::felt252" }, { "name": "symbol", "type": "core::felt252" }, { "name": "initial_supply", "type": "core::integer::u256" }, { "name": "contract_address_salt", "type": "core::felt252" }], "outputs": [{ "type": "core::starknet::contract_address::ContractAddress" }], "state_mutability": "external" }, { "type": "function", "name": "launch_on_jediswap", "inputs": [{ "name": "launch_parameters", "type": "creator_coin::factory::LaunchParameters" }, { "name": "quote_amount", "type": "core::integer::u256" }, { "name": "unlock_time", "type": "core::integer::u64" }], "outputs": [{ "type": "core::starknet::contract_address::ContractAddress" }], "state_mutability": "external" }, { "type": "function", "name": "launch_on_ekubo", "inputs": [{ "name": "launch_parameters", "type": "creator_coin::factory::LaunchParameters" }, { "name": "ekubo_parameters", "type": "creator_coin::exchanges::ekubo::ekubo_adapter::EkuboPoolParameters" }], "outputs": [{ "type": "(core::integer::u64, creator_coin::exchanges::ekubo::launcher::EkuboLP)" }], "state_mutability": "external" }, { "type": "function", "name": "launch_on_starkdefi", "inputs": [{ "name": "launch_parameters", "type": "creator_coin::factory::LaunchParameters" }, { "name": "quote_amount", "type": "core::integer::u256" }, { "name": "unlock_time", "type": "core::integer::u64" }], "outputs": [{ "type": "core::starknet::contract_address::ContractAddress" }], "state_mutability": "external" }, { "type": "function", "name": "exchange_address", "inputs": [{ "name": "exchange", "type": "creator_coin::exchanges::SupportedExchanges" }], "outputs": [{ "type": "core::starknet::contract_address::ContractAddress" }], "state_mutability": "view" }, { "type": "function", "name": "lock_manager_address", "inputs": [], "outputs": [{ "type": "core::starknet::contract_address::ContractAddress" }], "state_mutability": "view" }, { "type": "function", "name": "locked_liquidity", "inputs": [{ "name": "token", "type": "core::starknet::contract_address::ContractAddress" }], "outputs": [{ "type": "core::option::Option::<(core::starknet::contract_address::ContractAddress, creator_coin::token::creator_coin::LiquidityType)>" }], "state_mutability": "view" }, { "type": "function", "name": "is_creator_coin", "inputs": [{ "name": "address", "type": "core::starknet::contract_address::ContractAddress" }], "outputs": [{ "type": "core::bool" }], "state_mutability": "view" }, { "type": "function", "name": "ekubo_core_address", "inputs": [], "outputs": [{ "type": "core::starknet::contract_address::ContractAddress" }], "state_mutability": "view" }] }, { "type": "struct", "name": "core::array::Span::<(creator_coin::exchanges::SupportedExchanges, core::starknet::contract_address::ContractAddress)>", "members": [{ "name": "snapshot", "type": "@core::array::Array::<(creator_coin::exchanges::SupportedExchanges, core::starknet::contract_address::ContractAddress)>" }] }, { "type": "struct", "name": "core::array::Span::<(core::starknet::contract_address::ContractAddress, core::starknet::contract_address::ContractAddress)>", "members": [{ "name": "snapshot", "type": "@core::array::Array::<(core::starknet::contract_address::ContractAddress, core::starknet::contract_address::ContractAddress)>" }] }, { "type": "constructor", "name": "constructor", "inputs": [{ "name": "creator_coin_class_hash", "type": "core::starknet::class_hash::ClassHash" }, { "name": "lock_manager_address", "type": "core::starknet::contract_address::ContractAddress" }, { "name": "exchanges", "type": "core::array::Span::<(creator_coin::exchanges::SupportedExchanges, core::starknet::contract_address::ContractAddress)>" }, { "name": "migrated_tokens", "type": "core::array::Span::<(core::starknet::contract_address::ContractAddress, core::starknet::contract_address::ContractAddress)>" }] }, { "type": "event", "name": "creator_coin::factory::factory::Factory::CreatorCoinCreated", "kind": "struct", "members": [{ "name": "owner", "type": "core::starknet::contract_address::ContractAddress", "kind": "data" }, { "name": "name", "type": "core::felt252", "kind": "data" }, { "name": "symbol", "type": "core::felt252", "kind": "data" }, { "name": "initial_supply", "type": "core::integer::u256", "kind": "data" }, { "name": "creator_coin_address", "type": "core::starknet::contract_address::ContractAddress", "kind": "data" }] }, { "type": "event", "name": "creator_coin::factory::factory::Factory::CreatorCoinLaunched", "kind": "struct", "members": [{ "name": "creator_coin_address", "type": "core::starknet::contract_address::ContractAddress", "kind": "data" }, { "name": "quote_token", "type": "core::starknet::contract_address::ContractAddress", "kind": "data" }, { "name": "exchange_name", "type": "core::felt252", "kind": "data" }] }, { "type": "event", "name": "creator_coin::factory::factory::Factory::Event", "kind": "enum", "variants": [{ "name": "CreatorCoinCreated", "type": "creator_coin::factory::factory::Factory::CreatorCoinCreated", "kind": "nested" }, { "name": "CreatorCoinLaunched", "type": "creator_coin::factory::factory::Factory::CreatorCoinLaunched", "kind": "nested" }] }];
4639
4639
 
4640
+ // src/abis/ipTicketCollection.ts
4641
+ var IPTicketCollectionABI = [
4642
+ {
4643
+ "type": "impl",
4644
+ "name": "ERC721MetadataImpl",
4645
+ "interface_name": "openzeppelin_token::erc721::interface::IERC721Metadata"
4646
+ },
4647
+ {
4648
+ "type": "struct",
4649
+ "name": "core::byte_array::ByteArray",
4650
+ "members": [
4651
+ {
4652
+ "name": "data",
4653
+ "type": "core::array::Array::<core::bytes_31::bytes31>"
4654
+ },
4655
+ {
4656
+ "name": "pending_word",
4657
+ "type": "core::felt252"
4658
+ },
4659
+ {
4660
+ "name": "pending_word_len",
4661
+ "type": "core::internal::bounded_int::BoundedInt::<0, 30>"
4662
+ }
4663
+ ]
4664
+ },
4665
+ {
4666
+ "type": "struct",
4667
+ "name": "core::integer::u256",
4668
+ "members": [
4669
+ {
4670
+ "name": "low",
4671
+ "type": "core::integer::u128"
4672
+ },
4673
+ {
4674
+ "name": "high",
4675
+ "type": "core::integer::u128"
4676
+ }
4677
+ ]
4678
+ },
4679
+ {
4680
+ "type": "interface",
4681
+ "name": "openzeppelin_token::erc721::interface::IERC721Metadata",
4682
+ "items": [
4683
+ {
4684
+ "type": "function",
4685
+ "name": "name",
4686
+ "inputs": [],
4687
+ "outputs": [
4688
+ {
4689
+ "type": "core::byte_array::ByteArray"
4690
+ }
4691
+ ],
4692
+ "state_mutability": "view"
4693
+ },
4694
+ {
4695
+ "type": "function",
4696
+ "name": "symbol",
4697
+ "inputs": [],
4698
+ "outputs": [
4699
+ {
4700
+ "type": "core::byte_array::ByteArray"
4701
+ }
4702
+ ],
4703
+ "state_mutability": "view"
4704
+ },
4705
+ {
4706
+ "type": "function",
4707
+ "name": "token_uri",
4708
+ "inputs": [
4709
+ {
4710
+ "name": "token_id",
4711
+ "type": "core::integer::u256"
4712
+ }
4713
+ ],
4714
+ "outputs": [
4715
+ {
4716
+ "type": "core::byte_array::ByteArray"
4717
+ }
4718
+ ],
4719
+ "state_mutability": "view"
4720
+ }
4721
+ ]
4722
+ },
4723
+ {
4724
+ "type": "impl",
4725
+ "name": "ERC721MetadataCamelOnlyImpl",
4726
+ "interface_name": "openzeppelin_token::erc721::interface::IERC721MetadataCamelOnly"
4727
+ },
4728
+ {
4729
+ "type": "interface",
4730
+ "name": "openzeppelin_token::erc721::interface::IERC721MetadataCamelOnly",
4731
+ "items": [
4732
+ {
4733
+ "type": "function",
4734
+ "name": "tokenURI",
4735
+ "inputs": [
4736
+ {
4737
+ "name": "tokenId",
4738
+ "type": "core::integer::u256"
4739
+ }
4740
+ ],
4741
+ "outputs": [
4742
+ {
4743
+ "type": "core::byte_array::ByteArray"
4744
+ }
4745
+ ],
4746
+ "state_mutability": "view"
4747
+ }
4748
+ ]
4749
+ },
4750
+ {
4751
+ "type": "impl",
4752
+ "name": "IPTicketImpl",
4753
+ "interface_name": "ip_ticket::interface::IIPTicketCollection"
4754
+ },
4755
+ {
4756
+ "type": "enum",
4757
+ "name": "core::option::Option::<core::starknet::contract_address::ContractAddress>",
4758
+ "variants": [
4759
+ {
4760
+ "name": "Some",
4761
+ "type": "core::starknet::contract_address::ContractAddress"
4762
+ },
4763
+ {
4764
+ "name": "None",
4765
+ "type": "()"
4766
+ }
4767
+ ]
4768
+ },
4769
+ {
4770
+ "type": "enum",
4771
+ "name": "core::bool",
4772
+ "variants": [
4773
+ {
4774
+ "name": "False",
4775
+ "type": "()"
4776
+ },
4777
+ {
4778
+ "name": "True",
4779
+ "type": "()"
4780
+ }
4781
+ ]
4782
+ },
4783
+ {
4784
+ "type": "struct",
4785
+ "name": "ip_ticket::types::TicketCollection",
4786
+ "members": [
4787
+ {
4788
+ "name": "creator",
4789
+ "type": "core::starknet::contract_address::ContractAddress"
4790
+ },
4791
+ {
4792
+ "name": "price",
4793
+ "type": "core::integer::u256"
4794
+ },
4795
+ {
4796
+ "name": "max_supply",
4797
+ "type": "core::integer::u256"
4798
+ },
4799
+ {
4800
+ "name": "minted",
4801
+ "type": "core::integer::u256"
4802
+ },
4803
+ {
4804
+ "name": "expiration",
4805
+ "type": "core::integer::u64"
4806
+ },
4807
+ {
4808
+ "name": "royalty_bps",
4809
+ "type": "core::integer::u256"
4810
+ },
4811
+ {
4812
+ "name": "payment_token",
4813
+ "type": "core::option::Option::<core::starknet::contract_address::ContractAddress>"
4814
+ },
4815
+ {
4816
+ "name": "metadata_uri",
4817
+ "type": "core::byte_array::ByteArray"
4818
+ },
4819
+ {
4820
+ "name": "active",
4821
+ "type": "core::bool"
4822
+ }
4823
+ ]
4824
+ },
4825
+ {
4826
+ "type": "struct",
4827
+ "name": "ip_ticket::types::TicketData",
4828
+ "members": [
4829
+ {
4830
+ "name": "token_id",
4831
+ "type": "core::integer::u256"
4832
+ },
4833
+ {
4834
+ "name": "owner",
4835
+ "type": "core::starknet::contract_address::ContractAddress"
4836
+ },
4837
+ {
4838
+ "name": "collection_id",
4839
+ "type": "core::integer::u256"
4840
+ },
4841
+ {
4842
+ "name": "creator",
4843
+ "type": "core::starknet::contract_address::ContractAddress"
4844
+ },
4845
+ {
4846
+ "name": "metadata_uri",
4847
+ "type": "core::byte_array::ByteArray"
4848
+ },
4849
+ {
4850
+ "name": "expiration",
4851
+ "type": "core::integer::u64"
4852
+ },
4853
+ {
4854
+ "name": "redeemed",
4855
+ "type": "core::bool"
4856
+ },
4857
+ {
4858
+ "name": "valid",
4859
+ "type": "core::bool"
4860
+ }
4861
+ ]
4862
+ },
4863
+ {
4864
+ "type": "interface",
4865
+ "name": "ip_ticket::interface::IIPTicketCollection",
4866
+ "items": [
4867
+ {
4868
+ "type": "function",
4869
+ "name": "create_ticket_collection",
4870
+ "inputs": [
4871
+ {
4872
+ "name": "price",
4873
+ "type": "core::integer::u256"
4874
+ },
4875
+ {
4876
+ "name": "max_supply",
4877
+ "type": "core::integer::u256"
4878
+ },
4879
+ {
4880
+ "name": "expiration",
4881
+ "type": "core::integer::u64"
4882
+ },
4883
+ {
4884
+ "name": "royalty_bps",
4885
+ "type": "core::integer::u256"
4886
+ },
4887
+ {
4888
+ "name": "payment_token",
4889
+ "type": "core::option::Option::<core::starknet::contract_address::ContractAddress>"
4890
+ },
4891
+ {
4892
+ "name": "metadata_uri",
4893
+ "type": "core::byte_array::ByteArray"
4894
+ }
4895
+ ],
4896
+ "outputs": [
4897
+ {
4898
+ "type": "core::integer::u256"
4899
+ }
4900
+ ],
4901
+ "state_mutability": "external"
4902
+ },
4903
+ {
4904
+ "type": "function",
4905
+ "name": "set_collection_active",
4906
+ "inputs": [
4907
+ {
4908
+ "name": "collection_id",
4909
+ "type": "core::integer::u256"
4910
+ },
4911
+ {
4912
+ "name": "active",
4913
+ "type": "core::bool"
4914
+ }
4915
+ ],
4916
+ "outputs": [],
4917
+ "state_mutability": "external"
4918
+ },
4919
+ {
4920
+ "type": "function",
4921
+ "name": "mint_ticket",
4922
+ "inputs": [
4923
+ {
4924
+ "name": "collection_id",
4925
+ "type": "core::integer::u256"
4926
+ }
4927
+ ],
4928
+ "outputs": [
4929
+ {
4930
+ "type": "core::integer::u256"
4931
+ }
4932
+ ],
4933
+ "state_mutability": "external"
4934
+ },
4935
+ {
4936
+ "type": "function",
4937
+ "name": "redeem_ticket",
4938
+ "inputs": [
4939
+ {
4940
+ "name": "token_id",
4941
+ "type": "core::integer::u256"
4942
+ }
4943
+ ],
4944
+ "outputs": [],
4945
+ "state_mutability": "external"
4946
+ },
4947
+ {
4948
+ "type": "function",
4949
+ "name": "has_valid_ticket",
4950
+ "inputs": [
4951
+ {
4952
+ "name": "user",
4953
+ "type": "core::starknet::contract_address::ContractAddress"
4954
+ },
4955
+ {
4956
+ "name": "collection_id",
4957
+ "type": "core::integer::u256"
4958
+ }
4959
+ ],
4960
+ "outputs": [
4961
+ {
4962
+ "type": "core::bool"
4963
+ }
4964
+ ],
4965
+ "state_mutability": "view"
4966
+ },
4967
+ {
4968
+ "type": "function",
4969
+ "name": "get_ticket_collection",
4970
+ "inputs": [
4971
+ {
4972
+ "name": "collection_id",
4973
+ "type": "core::integer::u256"
4974
+ }
4975
+ ],
4976
+ "outputs": [
4977
+ {
4978
+ "type": "ip_ticket::types::TicketCollection"
4979
+ }
4980
+ ],
4981
+ "state_mutability": "view"
4982
+ },
4983
+ {
4984
+ "type": "function",
4985
+ "name": "get_ticket_data",
4986
+ "inputs": [
4987
+ {
4988
+ "name": "token_id",
4989
+ "type": "core::integer::u256"
4990
+ }
4991
+ ],
4992
+ "outputs": [
4993
+ {
4994
+ "type": "ip_ticket::types::TicketData"
4995
+ }
4996
+ ],
4997
+ "state_mutability": "view"
4998
+ },
4999
+ {
5000
+ "type": "function",
5001
+ "name": "get_ticket_collection_id",
5002
+ "inputs": [
5003
+ {
5004
+ "name": "token_id",
5005
+ "type": "core::integer::u256"
5006
+ }
5007
+ ],
5008
+ "outputs": [
5009
+ {
5010
+ "type": "core::integer::u256"
5011
+ }
5012
+ ],
5013
+ "state_mutability": "view"
5014
+ },
5015
+ {
5016
+ "type": "function",
5017
+ "name": "get_active_ticket_balance",
5018
+ "inputs": [
5019
+ {
5020
+ "name": "user",
5021
+ "type": "core::starknet::contract_address::ContractAddress"
5022
+ },
5023
+ {
5024
+ "name": "collection_id",
5025
+ "type": "core::integer::u256"
5026
+ }
5027
+ ],
5028
+ "outputs": [
5029
+ {
5030
+ "type": "core::integer::u256"
5031
+ }
5032
+ ],
5033
+ "state_mutability": "view"
5034
+ },
5035
+ {
5036
+ "type": "function",
5037
+ "name": "get_last_collection_id",
5038
+ "inputs": [],
5039
+ "outputs": [
5040
+ {
5041
+ "type": "core::integer::u256"
5042
+ }
5043
+ ],
5044
+ "state_mutability": "view"
5045
+ },
5046
+ {
5047
+ "type": "function",
5048
+ "name": "total_supply",
5049
+ "inputs": [],
5050
+ "outputs": [
5051
+ {
5052
+ "type": "core::integer::u256"
5053
+ }
5054
+ ],
5055
+ "state_mutability": "view"
5056
+ },
5057
+ {
5058
+ "type": "function",
5059
+ "name": "royalty_info",
5060
+ "inputs": [
5061
+ {
5062
+ "name": "token_id",
5063
+ "type": "core::integer::u256"
5064
+ },
5065
+ {
5066
+ "name": "sale_price",
5067
+ "type": "core::integer::u256"
5068
+ }
5069
+ ],
5070
+ "outputs": [
5071
+ {
5072
+ "type": "(core::starknet::contract_address::ContractAddress, core::integer::u256)"
5073
+ }
5074
+ ],
5075
+ "state_mutability": "view"
5076
+ },
5077
+ {
5078
+ "type": "function",
5079
+ "name": "royaltyInfo",
5080
+ "inputs": [
5081
+ {
5082
+ "name": "token_id",
5083
+ "type": "core::integer::u256"
5084
+ },
5085
+ {
5086
+ "name": "sale_price",
5087
+ "type": "core::integer::u256"
5088
+ }
5089
+ ],
5090
+ "outputs": [
5091
+ {
5092
+ "type": "(core::starknet::contract_address::ContractAddress, core::integer::u256)"
5093
+ }
5094
+ ],
5095
+ "state_mutability": "view"
5096
+ }
5097
+ ]
5098
+ },
5099
+ {
5100
+ "type": "impl",
5101
+ "name": "ERC721Impl",
5102
+ "interface_name": "openzeppelin_token::erc721::interface::IERC721"
5103
+ },
5104
+ {
5105
+ "type": "struct",
5106
+ "name": "core::array::Span::<core::felt252>",
5107
+ "members": [
5108
+ {
5109
+ "name": "snapshot",
5110
+ "type": "@core::array::Array::<core::felt252>"
5111
+ }
5112
+ ]
5113
+ },
5114
+ {
5115
+ "type": "interface",
5116
+ "name": "openzeppelin_token::erc721::interface::IERC721",
5117
+ "items": [
5118
+ {
5119
+ "type": "function",
5120
+ "name": "balance_of",
5121
+ "inputs": [
5122
+ {
5123
+ "name": "account",
5124
+ "type": "core::starknet::contract_address::ContractAddress"
5125
+ }
5126
+ ],
5127
+ "outputs": [
5128
+ {
5129
+ "type": "core::integer::u256"
5130
+ }
5131
+ ],
5132
+ "state_mutability": "view"
5133
+ },
5134
+ {
5135
+ "type": "function",
5136
+ "name": "owner_of",
5137
+ "inputs": [
5138
+ {
5139
+ "name": "token_id",
5140
+ "type": "core::integer::u256"
5141
+ }
5142
+ ],
5143
+ "outputs": [
5144
+ {
5145
+ "type": "core::starknet::contract_address::ContractAddress"
5146
+ }
5147
+ ],
5148
+ "state_mutability": "view"
5149
+ },
5150
+ {
5151
+ "type": "function",
5152
+ "name": "safe_transfer_from",
5153
+ "inputs": [
5154
+ {
5155
+ "name": "from",
5156
+ "type": "core::starknet::contract_address::ContractAddress"
5157
+ },
5158
+ {
5159
+ "name": "to",
5160
+ "type": "core::starknet::contract_address::ContractAddress"
5161
+ },
5162
+ {
5163
+ "name": "token_id",
5164
+ "type": "core::integer::u256"
5165
+ },
5166
+ {
5167
+ "name": "data",
5168
+ "type": "core::array::Span::<core::felt252>"
5169
+ }
5170
+ ],
5171
+ "outputs": [],
5172
+ "state_mutability": "external"
5173
+ },
5174
+ {
5175
+ "type": "function",
5176
+ "name": "transfer_from",
5177
+ "inputs": [
5178
+ {
5179
+ "name": "from",
5180
+ "type": "core::starknet::contract_address::ContractAddress"
5181
+ },
5182
+ {
5183
+ "name": "to",
5184
+ "type": "core::starknet::contract_address::ContractAddress"
5185
+ },
5186
+ {
5187
+ "name": "token_id",
5188
+ "type": "core::integer::u256"
5189
+ }
5190
+ ],
5191
+ "outputs": [],
5192
+ "state_mutability": "external"
5193
+ },
5194
+ {
5195
+ "type": "function",
5196
+ "name": "approve",
5197
+ "inputs": [
5198
+ {
5199
+ "name": "to",
5200
+ "type": "core::starknet::contract_address::ContractAddress"
5201
+ },
5202
+ {
5203
+ "name": "token_id",
5204
+ "type": "core::integer::u256"
5205
+ }
5206
+ ],
5207
+ "outputs": [],
5208
+ "state_mutability": "external"
5209
+ },
5210
+ {
5211
+ "type": "function",
5212
+ "name": "set_approval_for_all",
5213
+ "inputs": [
5214
+ {
5215
+ "name": "operator",
5216
+ "type": "core::starknet::contract_address::ContractAddress"
5217
+ },
5218
+ {
5219
+ "name": "approved",
5220
+ "type": "core::bool"
5221
+ }
5222
+ ],
5223
+ "outputs": [],
5224
+ "state_mutability": "external"
5225
+ },
5226
+ {
5227
+ "type": "function",
5228
+ "name": "get_approved",
5229
+ "inputs": [
5230
+ {
5231
+ "name": "token_id",
5232
+ "type": "core::integer::u256"
5233
+ }
5234
+ ],
5235
+ "outputs": [
5236
+ {
5237
+ "type": "core::starknet::contract_address::ContractAddress"
5238
+ }
5239
+ ],
5240
+ "state_mutability": "view"
5241
+ },
5242
+ {
5243
+ "type": "function",
5244
+ "name": "is_approved_for_all",
5245
+ "inputs": [
5246
+ {
5247
+ "name": "owner",
5248
+ "type": "core::starknet::contract_address::ContractAddress"
5249
+ },
5250
+ {
5251
+ "name": "operator",
5252
+ "type": "core::starknet::contract_address::ContractAddress"
5253
+ }
5254
+ ],
5255
+ "outputs": [
5256
+ {
5257
+ "type": "core::bool"
5258
+ }
5259
+ ],
5260
+ "state_mutability": "view"
5261
+ }
5262
+ ]
5263
+ },
5264
+ {
5265
+ "type": "impl",
5266
+ "name": "ERC721CamelOnly",
5267
+ "interface_name": "openzeppelin_token::erc721::interface::IERC721CamelOnly"
5268
+ },
5269
+ {
5270
+ "type": "interface",
5271
+ "name": "openzeppelin_token::erc721::interface::IERC721CamelOnly",
5272
+ "items": [
5273
+ {
5274
+ "type": "function",
5275
+ "name": "balanceOf",
5276
+ "inputs": [
5277
+ {
5278
+ "name": "account",
5279
+ "type": "core::starknet::contract_address::ContractAddress"
5280
+ }
5281
+ ],
5282
+ "outputs": [
5283
+ {
5284
+ "type": "core::integer::u256"
5285
+ }
5286
+ ],
5287
+ "state_mutability": "view"
5288
+ },
5289
+ {
5290
+ "type": "function",
5291
+ "name": "ownerOf",
5292
+ "inputs": [
5293
+ {
5294
+ "name": "tokenId",
5295
+ "type": "core::integer::u256"
5296
+ }
5297
+ ],
5298
+ "outputs": [
5299
+ {
5300
+ "type": "core::starknet::contract_address::ContractAddress"
5301
+ }
5302
+ ],
5303
+ "state_mutability": "view"
5304
+ },
5305
+ {
5306
+ "type": "function",
5307
+ "name": "safeTransferFrom",
5308
+ "inputs": [
5309
+ {
5310
+ "name": "from",
5311
+ "type": "core::starknet::contract_address::ContractAddress"
5312
+ },
5313
+ {
5314
+ "name": "to",
5315
+ "type": "core::starknet::contract_address::ContractAddress"
5316
+ },
5317
+ {
5318
+ "name": "tokenId",
5319
+ "type": "core::integer::u256"
5320
+ },
5321
+ {
5322
+ "name": "data",
5323
+ "type": "core::array::Span::<core::felt252>"
5324
+ }
5325
+ ],
5326
+ "outputs": [],
5327
+ "state_mutability": "external"
5328
+ },
5329
+ {
5330
+ "type": "function",
5331
+ "name": "transferFrom",
5332
+ "inputs": [
5333
+ {
5334
+ "name": "from",
5335
+ "type": "core::starknet::contract_address::ContractAddress"
5336
+ },
5337
+ {
5338
+ "name": "to",
5339
+ "type": "core::starknet::contract_address::ContractAddress"
5340
+ },
5341
+ {
5342
+ "name": "tokenId",
5343
+ "type": "core::integer::u256"
5344
+ }
5345
+ ],
5346
+ "outputs": [],
5347
+ "state_mutability": "external"
5348
+ },
5349
+ {
5350
+ "type": "function",
5351
+ "name": "setApprovalForAll",
5352
+ "inputs": [
5353
+ {
5354
+ "name": "operator",
5355
+ "type": "core::starknet::contract_address::ContractAddress"
5356
+ },
5357
+ {
5358
+ "name": "approved",
5359
+ "type": "core::bool"
5360
+ }
5361
+ ],
5362
+ "outputs": [],
5363
+ "state_mutability": "external"
5364
+ },
5365
+ {
5366
+ "type": "function",
5367
+ "name": "getApproved",
5368
+ "inputs": [
5369
+ {
5370
+ "name": "tokenId",
5371
+ "type": "core::integer::u256"
5372
+ }
5373
+ ],
5374
+ "outputs": [
5375
+ {
5376
+ "type": "core::starknet::contract_address::ContractAddress"
5377
+ }
5378
+ ],
5379
+ "state_mutability": "view"
5380
+ },
5381
+ {
5382
+ "type": "function",
5383
+ "name": "isApprovedForAll",
5384
+ "inputs": [
5385
+ {
5386
+ "name": "owner",
5387
+ "type": "core::starknet::contract_address::ContractAddress"
5388
+ },
5389
+ {
5390
+ "name": "operator",
5391
+ "type": "core::starknet::contract_address::ContractAddress"
5392
+ }
5393
+ ],
5394
+ "outputs": [
5395
+ {
5396
+ "type": "core::bool"
5397
+ }
5398
+ ],
5399
+ "state_mutability": "view"
5400
+ }
5401
+ ]
5402
+ },
5403
+ {
5404
+ "type": "impl",
5405
+ "name": "SRC5Impl",
5406
+ "interface_name": "openzeppelin_introspection::interface::ISRC5"
5407
+ },
5408
+ {
5409
+ "type": "interface",
5410
+ "name": "openzeppelin_introspection::interface::ISRC5",
5411
+ "items": [
5412
+ {
5413
+ "type": "function",
5414
+ "name": "supports_interface",
5415
+ "inputs": [
5416
+ {
5417
+ "name": "interface_id",
5418
+ "type": "core::felt252"
5419
+ }
5420
+ ],
5421
+ "outputs": [
5422
+ {
5423
+ "type": "core::bool"
5424
+ }
5425
+ ],
5426
+ "state_mutability": "view"
5427
+ }
5428
+ ]
5429
+ },
5430
+ {
5431
+ "type": "impl",
5432
+ "name": "OwnableMixinImpl",
5433
+ "interface_name": "openzeppelin_access::ownable::interface::OwnableABI"
5434
+ },
5435
+ {
5436
+ "type": "interface",
5437
+ "name": "openzeppelin_access::ownable::interface::OwnableABI",
5438
+ "items": [
5439
+ {
5440
+ "type": "function",
5441
+ "name": "owner",
5442
+ "inputs": [],
5443
+ "outputs": [
5444
+ {
5445
+ "type": "core::starknet::contract_address::ContractAddress"
5446
+ }
5447
+ ],
5448
+ "state_mutability": "view"
5449
+ },
5450
+ {
5451
+ "type": "function",
5452
+ "name": "transfer_ownership",
5453
+ "inputs": [
5454
+ {
5455
+ "name": "new_owner",
5456
+ "type": "core::starknet::contract_address::ContractAddress"
5457
+ }
5458
+ ],
5459
+ "outputs": [],
5460
+ "state_mutability": "external"
5461
+ },
5462
+ {
5463
+ "type": "function",
5464
+ "name": "renounce_ownership",
5465
+ "inputs": [],
5466
+ "outputs": [],
5467
+ "state_mutability": "external"
5468
+ },
5469
+ {
5470
+ "type": "function",
5471
+ "name": "transferOwnership",
5472
+ "inputs": [
5473
+ {
5474
+ "name": "newOwner",
5475
+ "type": "core::starknet::contract_address::ContractAddress"
5476
+ }
5477
+ ],
5478
+ "outputs": [],
5479
+ "state_mutability": "external"
5480
+ },
5481
+ {
5482
+ "type": "function",
5483
+ "name": "renounceOwnership",
5484
+ "inputs": [],
5485
+ "outputs": [],
5486
+ "state_mutability": "external"
5487
+ }
5488
+ ]
5489
+ },
5490
+ {
5491
+ "type": "constructor",
5492
+ "name": "constructor",
5493
+ "inputs": [
5494
+ {
5495
+ "name": "name",
5496
+ "type": "core::byte_array::ByteArray"
5497
+ },
5498
+ {
5499
+ "name": "symbol",
5500
+ "type": "core::byte_array::ByteArray"
5501
+ },
5502
+ {
5503
+ "name": "owner",
5504
+ "type": "core::starknet::contract_address::ContractAddress"
5505
+ }
5506
+ ]
5507
+ },
5508
+ {
5509
+ "type": "event",
5510
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Transfer",
5511
+ "kind": "struct",
5512
+ "members": [
5513
+ {
5514
+ "name": "from",
5515
+ "type": "core::starknet::contract_address::ContractAddress",
5516
+ "kind": "key"
5517
+ },
5518
+ {
5519
+ "name": "to",
5520
+ "type": "core::starknet::contract_address::ContractAddress",
5521
+ "kind": "key"
5522
+ },
5523
+ {
5524
+ "name": "token_id",
5525
+ "type": "core::integer::u256",
5526
+ "kind": "key"
5527
+ }
5528
+ ]
5529
+ },
5530
+ {
5531
+ "type": "event",
5532
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Approval",
5533
+ "kind": "struct",
5534
+ "members": [
5535
+ {
5536
+ "name": "owner",
5537
+ "type": "core::starknet::contract_address::ContractAddress",
5538
+ "kind": "key"
5539
+ },
5540
+ {
5541
+ "name": "approved",
5542
+ "type": "core::starknet::contract_address::ContractAddress",
5543
+ "kind": "key"
5544
+ },
5545
+ {
5546
+ "name": "token_id",
5547
+ "type": "core::integer::u256",
5548
+ "kind": "key"
5549
+ }
5550
+ ]
5551
+ },
5552
+ {
5553
+ "type": "event",
5554
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::ApprovalForAll",
5555
+ "kind": "struct",
5556
+ "members": [
5557
+ {
5558
+ "name": "owner",
5559
+ "type": "core::starknet::contract_address::ContractAddress",
5560
+ "kind": "key"
5561
+ },
5562
+ {
5563
+ "name": "operator",
5564
+ "type": "core::starknet::contract_address::ContractAddress",
5565
+ "kind": "key"
5566
+ },
5567
+ {
5568
+ "name": "approved",
5569
+ "type": "core::bool",
5570
+ "kind": "data"
5571
+ }
5572
+ ]
5573
+ },
5574
+ {
5575
+ "type": "event",
5576
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Event",
5577
+ "kind": "enum",
5578
+ "variants": [
5579
+ {
5580
+ "name": "Transfer",
5581
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Transfer",
5582
+ "kind": "nested"
5583
+ },
5584
+ {
5585
+ "name": "Approval",
5586
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Approval",
5587
+ "kind": "nested"
5588
+ },
5589
+ {
5590
+ "name": "ApprovalForAll",
5591
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::ApprovalForAll",
5592
+ "kind": "nested"
5593
+ }
5594
+ ]
5595
+ },
5596
+ {
5597
+ "type": "event",
5598
+ "name": "openzeppelin_introspection::src5::SRC5Component::Event",
5599
+ "kind": "enum",
5600
+ "variants": []
5601
+ },
5602
+ {
5603
+ "type": "event",
5604
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferred",
5605
+ "kind": "struct",
5606
+ "members": [
5607
+ {
5608
+ "name": "previous_owner",
5609
+ "type": "core::starknet::contract_address::ContractAddress",
5610
+ "kind": "key"
5611
+ },
5612
+ {
5613
+ "name": "new_owner",
5614
+ "type": "core::starknet::contract_address::ContractAddress",
5615
+ "kind": "key"
5616
+ }
5617
+ ]
5618
+ },
5619
+ {
5620
+ "type": "event",
5621
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferStarted",
5622
+ "kind": "struct",
5623
+ "members": [
5624
+ {
5625
+ "name": "previous_owner",
5626
+ "type": "core::starknet::contract_address::ContractAddress",
5627
+ "kind": "key"
5628
+ },
5629
+ {
5630
+ "name": "new_owner",
5631
+ "type": "core::starknet::contract_address::ContractAddress",
5632
+ "kind": "key"
5633
+ }
5634
+ ]
5635
+ },
5636
+ {
5637
+ "type": "event",
5638
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::Event",
5639
+ "kind": "enum",
5640
+ "variants": [
5641
+ {
5642
+ "name": "OwnershipTransferred",
5643
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferred",
5644
+ "kind": "nested"
5645
+ },
5646
+ {
5647
+ "name": "OwnershipTransferStarted",
5648
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferStarted",
5649
+ "kind": "nested"
5650
+ }
5651
+ ]
5652
+ },
5653
+ {
5654
+ "type": "event",
5655
+ "name": "ip_ticket::IPTicketCollection::IPTicketCollection::TicketCollectionCreated",
5656
+ "kind": "struct",
5657
+ "members": [
5658
+ {
5659
+ "name": "collection_id",
5660
+ "type": "core::integer::u256",
5661
+ "kind": "key"
5662
+ },
5663
+ {
5664
+ "name": "creator",
5665
+ "type": "core::starknet::contract_address::ContractAddress",
5666
+ "kind": "key"
5667
+ },
5668
+ {
5669
+ "name": "price",
5670
+ "type": "core::integer::u256",
5671
+ "kind": "data"
5672
+ },
5673
+ {
5674
+ "name": "max_supply",
5675
+ "type": "core::integer::u256",
5676
+ "kind": "data"
5677
+ },
5678
+ {
5679
+ "name": "expiration",
5680
+ "type": "core::integer::u64",
5681
+ "kind": "data"
5682
+ },
5683
+ {
5684
+ "name": "royalty_bps",
5685
+ "type": "core::integer::u256",
5686
+ "kind": "data"
5687
+ },
5688
+ {
5689
+ "name": "payment_token",
5690
+ "type": "core::option::Option::<core::starknet::contract_address::ContractAddress>",
5691
+ "kind": "data"
5692
+ },
5693
+ {
5694
+ "name": "metadata_uri",
5695
+ "type": "core::byte_array::ByteArray",
5696
+ "kind": "data"
5697
+ },
5698
+ {
5699
+ "name": "created_at",
5700
+ "type": "core::integer::u64",
5701
+ "kind": "data"
5702
+ }
5703
+ ]
5704
+ },
5705
+ {
5706
+ "type": "event",
5707
+ "name": "ip_ticket::IPTicketCollection::IPTicketCollection::CollectionStatusUpdated",
5708
+ "kind": "struct",
5709
+ "members": [
5710
+ {
5711
+ "name": "collection_id",
5712
+ "type": "core::integer::u256",
5713
+ "kind": "key"
5714
+ },
5715
+ {
5716
+ "name": "active",
5717
+ "type": "core::bool",
5718
+ "kind": "data"
5719
+ },
5720
+ {
5721
+ "name": "updated_at",
5722
+ "type": "core::integer::u64",
5723
+ "kind": "data"
5724
+ }
5725
+ ]
5726
+ },
5727
+ {
5728
+ "type": "event",
5729
+ "name": "ip_ticket::IPTicketCollection::IPTicketCollection::TicketMinted",
5730
+ "kind": "struct",
5731
+ "members": [
5732
+ {
5733
+ "name": "token_id",
5734
+ "type": "core::integer::u256",
5735
+ "kind": "key"
5736
+ },
5737
+ {
5738
+ "name": "collection_id",
5739
+ "type": "core::integer::u256",
5740
+ "kind": "key"
5741
+ },
5742
+ {
5743
+ "name": "owner",
5744
+ "type": "core::starknet::contract_address::ContractAddress",
5745
+ "kind": "key"
5746
+ },
5747
+ {
5748
+ "name": "minted_at",
5749
+ "type": "core::integer::u64",
5750
+ "kind": "data"
5751
+ }
5752
+ ]
5753
+ },
5754
+ {
5755
+ "type": "event",
5756
+ "name": "ip_ticket::IPTicketCollection::IPTicketCollection::TicketRedeemed",
5757
+ "kind": "struct",
5758
+ "members": [
5759
+ {
5760
+ "name": "token_id",
5761
+ "type": "core::integer::u256",
5762
+ "kind": "key"
5763
+ },
5764
+ {
5765
+ "name": "collection_id",
5766
+ "type": "core::integer::u256",
5767
+ "kind": "key"
5768
+ },
5769
+ {
5770
+ "name": "owner",
5771
+ "type": "core::starknet::contract_address::ContractAddress",
5772
+ "kind": "key"
5773
+ },
5774
+ {
5775
+ "name": "redeemed_at",
5776
+ "type": "core::integer::u64",
5777
+ "kind": "data"
5778
+ }
5779
+ ]
5780
+ },
5781
+ {
5782
+ "type": "event",
5783
+ "name": "ip_ticket::IPTicketCollection::IPTicketCollection::Event",
5784
+ "kind": "enum",
5785
+ "variants": [
5786
+ {
5787
+ "name": "ERC721Event",
5788
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Event",
5789
+ "kind": "flat"
5790
+ },
5791
+ {
5792
+ "name": "SRC5Event",
5793
+ "type": "openzeppelin_introspection::src5::SRC5Component::Event",
5794
+ "kind": "flat"
5795
+ },
5796
+ {
5797
+ "name": "OwnableEvent",
5798
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::Event",
5799
+ "kind": "flat"
5800
+ },
5801
+ {
5802
+ "name": "TicketCollectionCreated",
5803
+ "type": "ip_ticket::IPTicketCollection::IPTicketCollection::TicketCollectionCreated",
5804
+ "kind": "nested"
5805
+ },
5806
+ {
5807
+ "name": "CollectionStatusUpdated",
5808
+ "type": "ip_ticket::IPTicketCollection::IPTicketCollection::CollectionStatusUpdated",
5809
+ "kind": "nested"
5810
+ },
5811
+ {
5812
+ "name": "TicketMinted",
5813
+ "type": "ip_ticket::IPTicketCollection::IPTicketCollection::TicketMinted",
5814
+ "kind": "nested"
5815
+ },
5816
+ {
5817
+ "name": "TicketRedeemed",
5818
+ "type": "ip_ticket::IPTicketCollection::IPTicketCollection::TicketRedeemed",
5819
+ "kind": "nested"
5820
+ }
5821
+ ]
5822
+ }
5823
+ ];
5824
+
5825
+ // src/abis/ipTicketCollectionFactory.ts
5826
+ var IPTicketCollectionFactoryABI = [
5827
+ {
5828
+ "type": "impl",
5829
+ "name": "IPTicketCollectionFactoryImpl",
5830
+ "interface_name": "ip_ticket::interface::IIPTicketCollectionFactory"
5831
+ },
5832
+ {
5833
+ "type": "struct",
5834
+ "name": "core::byte_array::ByteArray",
5835
+ "members": [
5836
+ {
5837
+ "name": "data",
5838
+ "type": "core::array::Array::<core::bytes_31::bytes31>"
5839
+ },
5840
+ {
5841
+ "name": "pending_word",
5842
+ "type": "core::felt252"
5843
+ },
5844
+ {
5845
+ "name": "pending_word_len",
5846
+ "type": "core::internal::bounded_int::BoundedInt::<0, 30>"
5847
+ }
5848
+ ]
5849
+ },
5850
+ {
5851
+ "type": "interface",
5852
+ "name": "ip_ticket::interface::IIPTicketCollectionFactory",
5853
+ "items": [
5854
+ {
5855
+ "type": "function",
5856
+ "name": "collection_class_hash",
5857
+ "inputs": [],
5858
+ "outputs": [
5859
+ {
5860
+ "type": "core::starknet::class_hash::ClassHash"
5861
+ }
5862
+ ],
5863
+ "state_mutability": "view"
5864
+ },
5865
+ {
5866
+ "type": "function",
5867
+ "name": "version",
5868
+ "inputs": [],
5869
+ "outputs": [
5870
+ {
5871
+ "type": "core::byte_array::ByteArray"
5872
+ }
5873
+ ],
5874
+ "state_mutability": "view"
5875
+ },
5876
+ {
5877
+ "type": "function",
5878
+ "name": "deploy_ticket_collection",
5879
+ "inputs": [
5880
+ {
5881
+ "name": "name",
5882
+ "type": "core::byte_array::ByteArray"
5883
+ },
5884
+ {
5885
+ "name": "symbol",
5886
+ "type": "core::byte_array::ByteArray"
5887
+ }
5888
+ ],
5889
+ "outputs": [
5890
+ {
5891
+ "type": "core::starknet::contract_address::ContractAddress"
5892
+ }
5893
+ ],
5894
+ "state_mutability": "external"
5895
+ }
5896
+ ]
5897
+ },
5898
+ {
5899
+ "type": "constructor",
5900
+ "name": "constructor",
5901
+ "inputs": [
5902
+ {
5903
+ "name": "collection_class_hash",
5904
+ "type": "core::starknet::class_hash::ClassHash"
5905
+ }
5906
+ ]
5907
+ },
5908
+ {
5909
+ "type": "event",
5910
+ "name": "ip_ticket::IPTicketCollectionFactory::IPTicketCollectionFactory::CollectionDeployed",
5911
+ "kind": "struct",
5912
+ "members": [
5913
+ {
5914
+ "name": "collection_address",
5915
+ "type": "core::starknet::contract_address::ContractAddress",
5916
+ "kind": "key"
5917
+ },
5918
+ {
5919
+ "name": "owner",
5920
+ "type": "core::starknet::contract_address::ContractAddress",
5921
+ "kind": "key"
5922
+ },
5923
+ {
5924
+ "name": "name",
5925
+ "type": "core::byte_array::ByteArray",
5926
+ "kind": "data"
5927
+ },
5928
+ {
5929
+ "name": "symbol",
5930
+ "type": "core::byte_array::ByteArray",
5931
+ "kind": "data"
5932
+ }
5933
+ ]
5934
+ },
5935
+ {
5936
+ "type": "event",
5937
+ "name": "ip_ticket::IPTicketCollectionFactory::IPTicketCollectionFactory::Event",
5938
+ "kind": "enum",
5939
+ "variants": [
5940
+ {
5941
+ "name": "CollectionDeployed",
5942
+ "type": "ip_ticket::IPTicketCollectionFactory::IPTicketCollectionFactory::CollectionDeployed",
5943
+ "kind": "nested"
5944
+ }
5945
+ ]
5946
+ }
5947
+ ];
5948
+
5949
+ // src/abis/ipClub.ts
5950
+ var IPClubABI = [
5951
+ {
5952
+ "type": "impl",
5953
+ "name": "IPClubImpl",
5954
+ "interface_name": "ip_club::interfaces::IIPClub::IIPClub"
5955
+ },
5956
+ {
5957
+ "type": "struct",
5958
+ "name": "core::byte_array::ByteArray",
5959
+ "members": [
5960
+ {
5961
+ "name": "data",
5962
+ "type": "core::array::Array::<core::bytes_31::bytes31>"
5963
+ },
5964
+ {
5965
+ "name": "pending_word",
5966
+ "type": "core::felt252"
5967
+ },
5968
+ {
5969
+ "name": "pending_word_len",
5970
+ "type": "core::internal::bounded_int::BoundedInt::<0, 30>"
5971
+ }
5972
+ ]
5973
+ },
5974
+ {
5975
+ "type": "enum",
5976
+ "name": "core::option::Option::<core::integer::u32>",
5977
+ "variants": [
5978
+ {
5979
+ "name": "Some",
5980
+ "type": "core::integer::u32"
5981
+ },
5982
+ {
5983
+ "name": "None",
5984
+ "type": "()"
5985
+ }
5986
+ ]
5987
+ },
5988
+ {
5989
+ "type": "struct",
5990
+ "name": "core::integer::u256",
5991
+ "members": [
5992
+ {
5993
+ "name": "low",
5994
+ "type": "core::integer::u128"
5995
+ },
5996
+ {
5997
+ "name": "high",
5998
+ "type": "core::integer::u128"
5999
+ }
6000
+ ]
6001
+ },
6002
+ {
6003
+ "type": "enum",
6004
+ "name": "core::option::Option::<core::integer::u256>",
6005
+ "variants": [
6006
+ {
6007
+ "name": "Some",
6008
+ "type": "core::integer::u256"
6009
+ },
6010
+ {
6011
+ "name": "None",
6012
+ "type": "()"
6013
+ }
6014
+ ]
6015
+ },
6016
+ {
6017
+ "type": "enum",
6018
+ "name": "core::option::Option::<core::starknet::contract_address::ContractAddress>",
6019
+ "variants": [
6020
+ {
6021
+ "name": "Some",
6022
+ "type": "core::starknet::contract_address::ContractAddress"
6023
+ },
6024
+ {
6025
+ "name": "None",
6026
+ "type": "()"
6027
+ }
6028
+ ]
6029
+ },
6030
+ {
6031
+ "type": "enum",
6032
+ "name": "core::bool",
6033
+ "variants": [
6034
+ {
6035
+ "name": "False",
6036
+ "type": "()"
6037
+ },
6038
+ {
6039
+ "name": "True",
6040
+ "type": "()"
6041
+ }
6042
+ ]
6043
+ },
6044
+ {
6045
+ "type": "struct",
6046
+ "name": "ip_club::types::ClubRecord",
6047
+ "members": [
6048
+ {
6049
+ "name": "creator",
6050
+ "type": "core::starknet::contract_address::ContractAddress"
6051
+ },
6052
+ {
6053
+ "name": "club_nft",
6054
+ "type": "core::starknet::contract_address::ContractAddress"
6055
+ },
6056
+ {
6057
+ "name": "open",
6058
+ "type": "core::bool"
6059
+ },
6060
+ {
6061
+ "name": "num_members",
6062
+ "type": "core::integer::u32"
6063
+ },
6064
+ {
6065
+ "name": "max_members",
6066
+ "type": "core::option::Option::<core::integer::u32>"
6067
+ },
6068
+ {
6069
+ "name": "entry_fee",
6070
+ "type": "core::option::Option::<core::integer::u256>"
6071
+ },
6072
+ {
6073
+ "name": "payment_token",
6074
+ "type": "core::option::Option::<core::starknet::contract_address::ContractAddress>"
6075
+ }
6076
+ ]
6077
+ },
6078
+ {
6079
+ "type": "interface",
6080
+ "name": "ip_club::interfaces::IIPClub::IIPClub",
6081
+ "items": [
6082
+ {
6083
+ "type": "function",
6084
+ "name": "create_club",
6085
+ "inputs": [
6086
+ {
6087
+ "name": "name",
6088
+ "type": "core::byte_array::ByteArray"
6089
+ },
6090
+ {
6091
+ "name": "symbol",
6092
+ "type": "core::byte_array::ByteArray"
6093
+ },
6094
+ {
6095
+ "name": "metadata_uri",
6096
+ "type": "core::byte_array::ByteArray"
6097
+ },
6098
+ {
6099
+ "name": "max_members",
6100
+ "type": "core::option::Option::<core::integer::u32>"
6101
+ },
6102
+ {
6103
+ "name": "entry_fee",
6104
+ "type": "core::option::Option::<core::integer::u256>"
6105
+ },
6106
+ {
6107
+ "name": "payment_token",
6108
+ "type": "core::option::Option::<core::starknet::contract_address::ContractAddress>"
6109
+ }
6110
+ ],
6111
+ "outputs": [
6112
+ {
6113
+ "type": "core::integer::u256"
6114
+ }
6115
+ ],
6116
+ "state_mutability": "external"
6117
+ },
6118
+ {
6119
+ "type": "function",
6120
+ "name": "set_club_open",
6121
+ "inputs": [
6122
+ {
6123
+ "name": "club_id",
6124
+ "type": "core::integer::u256"
6125
+ },
6126
+ {
6127
+ "name": "open",
6128
+ "type": "core::bool"
6129
+ }
6130
+ ],
6131
+ "outputs": [],
6132
+ "state_mutability": "external"
6133
+ },
6134
+ {
6135
+ "type": "function",
6136
+ "name": "join_club",
6137
+ "inputs": [
6138
+ {
6139
+ "name": "club_id",
6140
+ "type": "core::integer::u256"
6141
+ }
6142
+ ],
6143
+ "outputs": [],
6144
+ "state_mutability": "external"
6145
+ },
6146
+ {
6147
+ "type": "function",
6148
+ "name": "leave_club",
6149
+ "inputs": [
6150
+ {
6151
+ "name": "club_id",
6152
+ "type": "core::integer::u256"
6153
+ },
6154
+ {
6155
+ "name": "token_id",
6156
+ "type": "core::integer::u256"
6157
+ }
6158
+ ],
6159
+ "outputs": [],
6160
+ "state_mutability": "external"
6161
+ },
6162
+ {
6163
+ "type": "function",
6164
+ "name": "get_club_record",
6165
+ "inputs": [
6166
+ {
6167
+ "name": "club_id",
6168
+ "type": "core::integer::u256"
6169
+ }
6170
+ ],
6171
+ "outputs": [
6172
+ {
6173
+ "type": "ip_club::types::ClubRecord"
6174
+ }
6175
+ ],
6176
+ "state_mutability": "view"
6177
+ },
6178
+ {
6179
+ "type": "function",
6180
+ "name": "is_member",
6181
+ "inputs": [
6182
+ {
6183
+ "name": "club_id",
6184
+ "type": "core::integer::u256"
6185
+ },
6186
+ {
6187
+ "name": "user",
6188
+ "type": "core::starknet::contract_address::ContractAddress"
6189
+ }
6190
+ ],
6191
+ "outputs": [
6192
+ {
6193
+ "type": "core::bool"
6194
+ }
6195
+ ],
6196
+ "state_mutability": "view"
6197
+ },
6198
+ {
6199
+ "type": "function",
6200
+ "name": "get_last_club_id",
6201
+ "inputs": [],
6202
+ "outputs": [
6203
+ {
6204
+ "type": "core::integer::u256"
6205
+ }
6206
+ ],
6207
+ "state_mutability": "view"
6208
+ }
6209
+ ]
6210
+ },
6211
+ {
6212
+ "type": "impl",
6213
+ "name": "SRC5Impl",
6214
+ "interface_name": "openzeppelin_introspection::interface::ISRC5"
6215
+ },
6216
+ {
6217
+ "type": "interface",
6218
+ "name": "openzeppelin_introspection::interface::ISRC5",
6219
+ "items": [
6220
+ {
6221
+ "type": "function",
6222
+ "name": "supports_interface",
6223
+ "inputs": [
6224
+ {
6225
+ "name": "interface_id",
6226
+ "type": "core::felt252"
6227
+ }
6228
+ ],
6229
+ "outputs": [
6230
+ {
6231
+ "type": "core::bool"
6232
+ }
6233
+ ],
6234
+ "state_mutability": "view"
6235
+ }
6236
+ ]
6237
+ },
6238
+ {
6239
+ "type": "constructor",
6240
+ "name": "constructor",
6241
+ "inputs": [
6242
+ {
6243
+ "name": "ip_club_nft_class_hash",
6244
+ "type": "core::starknet::class_hash::ClassHash"
6245
+ }
6246
+ ]
6247
+ },
6248
+ {
6249
+ "type": "event",
6250
+ "name": "openzeppelin_introspection::src5::SRC5Component::Event",
6251
+ "kind": "enum",
6252
+ "variants": []
6253
+ },
6254
+ {
6255
+ "type": "event",
6256
+ "name": "ip_club::events::NewClubCreated",
6257
+ "kind": "struct",
6258
+ "members": [
6259
+ {
6260
+ "name": "club_id",
6261
+ "type": "core::integer::u256",
6262
+ "kind": "key"
6263
+ },
6264
+ {
6265
+ "name": "creator",
6266
+ "type": "core::starknet::contract_address::ContractAddress",
6267
+ "kind": "key"
6268
+ },
6269
+ {
6270
+ "name": "club_nft",
6271
+ "type": "core::starknet::contract_address::ContractAddress",
6272
+ "kind": "data"
6273
+ },
6274
+ {
6275
+ "name": "metadata_uri",
6276
+ "type": "core::byte_array::ByteArray",
6277
+ "kind": "data"
6278
+ },
6279
+ {
6280
+ "name": "timestamp",
6281
+ "type": "core::integer::u64",
6282
+ "kind": "data"
6283
+ }
6284
+ ]
6285
+ },
6286
+ {
6287
+ "type": "event",
6288
+ "name": "ip_club::events::ClubStatusUpdated",
6289
+ "kind": "struct",
6290
+ "members": [
6291
+ {
6292
+ "name": "club_id",
6293
+ "type": "core::integer::u256",
6294
+ "kind": "key"
6295
+ },
6296
+ {
6297
+ "name": "open",
6298
+ "type": "core::bool",
6299
+ "kind": "data"
6300
+ },
6301
+ {
6302
+ "name": "timestamp",
6303
+ "type": "core::integer::u64",
6304
+ "kind": "data"
6305
+ }
6306
+ ]
6307
+ },
6308
+ {
6309
+ "type": "event",
6310
+ "name": "ip_club::events::NewMember",
6311
+ "kind": "struct",
6312
+ "members": [
6313
+ {
6314
+ "name": "club_id",
6315
+ "type": "core::integer::u256",
6316
+ "kind": "key"
6317
+ },
6318
+ {
6319
+ "name": "member",
6320
+ "type": "core::starknet::contract_address::ContractAddress",
6321
+ "kind": "key"
6322
+ },
6323
+ {
6324
+ "name": "timestamp",
6325
+ "type": "core::integer::u64",
6326
+ "kind": "data"
6327
+ }
6328
+ ]
6329
+ },
6330
+ {
6331
+ "type": "event",
6332
+ "name": "ip_club::events::MemberLeft",
6333
+ "kind": "struct",
6334
+ "members": [
6335
+ {
6336
+ "name": "club_id",
6337
+ "type": "core::integer::u256",
6338
+ "kind": "key"
6339
+ },
6340
+ {
6341
+ "name": "member",
6342
+ "type": "core::starknet::contract_address::ContractAddress",
6343
+ "kind": "key"
6344
+ },
6345
+ {
6346
+ "name": "timestamp",
6347
+ "type": "core::integer::u64",
6348
+ "kind": "data"
6349
+ }
6350
+ ]
6351
+ },
6352
+ {
6353
+ "type": "event",
6354
+ "name": "ip_club::IPClub::IPClub::Event",
6355
+ "kind": "enum",
6356
+ "variants": [
6357
+ {
6358
+ "name": "SRC5Event",
6359
+ "type": "openzeppelin_introspection::src5::SRC5Component::Event",
6360
+ "kind": "flat"
6361
+ },
6362
+ {
6363
+ "name": "NewClubCreated",
6364
+ "type": "ip_club::events::NewClubCreated",
6365
+ "kind": "nested"
6366
+ },
6367
+ {
6368
+ "name": "ClubStatusUpdated",
6369
+ "type": "ip_club::events::ClubStatusUpdated",
6370
+ "kind": "nested"
6371
+ },
6372
+ {
6373
+ "name": "NewMember",
6374
+ "type": "ip_club::events::NewMember",
6375
+ "kind": "nested"
6376
+ },
6377
+ {
6378
+ "name": "MemberLeft",
6379
+ "type": "ip_club::events::MemberLeft",
6380
+ "kind": "nested"
6381
+ }
6382
+ ]
6383
+ }
6384
+ ];
6385
+
6386
+ // src/abis/ipClubNft.ts
6387
+ var IPClubNFTABI = [
6388
+ {
6389
+ "type": "impl",
6390
+ "name": "IIPClubNFTImpl",
6391
+ "interface_name": "ip_club::interfaces::IIPClubNFT::IIPClubNFT"
6392
+ },
6393
+ {
6394
+ "type": "struct",
6395
+ "name": "core::integer::u256",
6396
+ "members": [
6397
+ {
6398
+ "name": "low",
6399
+ "type": "core::integer::u128"
6400
+ },
6401
+ {
6402
+ "name": "high",
6403
+ "type": "core::integer::u128"
6404
+ }
6405
+ ]
6406
+ },
6407
+ {
6408
+ "type": "enum",
6409
+ "name": "core::bool",
6410
+ "variants": [
6411
+ {
6412
+ "name": "False",
6413
+ "type": "()"
6414
+ },
6415
+ {
6416
+ "name": "True",
6417
+ "type": "()"
6418
+ }
6419
+ ]
6420
+ },
6421
+ {
6422
+ "type": "interface",
6423
+ "name": "ip_club::interfaces::IIPClubNFT::IIPClubNFT",
6424
+ "items": [
6425
+ {
6426
+ "type": "function",
6427
+ "name": "mint",
6428
+ "inputs": [
6429
+ {
6430
+ "name": "recipient",
6431
+ "type": "core::starknet::contract_address::ContractAddress"
6432
+ }
6433
+ ],
6434
+ "outputs": [],
6435
+ "state_mutability": "external"
6436
+ },
6437
+ {
6438
+ "type": "function",
6439
+ "name": "burn",
6440
+ "inputs": [
6441
+ {
6442
+ "name": "member",
6443
+ "type": "core::starknet::contract_address::ContractAddress"
6444
+ },
6445
+ {
6446
+ "name": "token_id",
6447
+ "type": "core::integer::u256"
6448
+ }
6449
+ ],
6450
+ "outputs": [],
6451
+ "state_mutability": "external"
6452
+ },
6453
+ {
6454
+ "type": "function",
6455
+ "name": "has_nft",
6456
+ "inputs": [
6457
+ {
6458
+ "name": "user",
6459
+ "type": "core::starknet::contract_address::ContractAddress"
6460
+ }
6461
+ ],
6462
+ "outputs": [
6463
+ {
6464
+ "type": "core::bool"
6465
+ }
6466
+ ],
6467
+ "state_mutability": "view"
6468
+ },
6469
+ {
6470
+ "type": "function",
6471
+ "name": "get_nft_creator",
6472
+ "inputs": [],
6473
+ "outputs": [
6474
+ {
6475
+ "type": "core::starknet::contract_address::ContractAddress"
6476
+ }
6477
+ ],
6478
+ "state_mutability": "view"
6479
+ },
6480
+ {
6481
+ "type": "function",
6482
+ "name": "get_ip_club_manager",
6483
+ "inputs": [],
6484
+ "outputs": [
6485
+ {
6486
+ "type": "core::starknet::contract_address::ContractAddress"
6487
+ }
6488
+ ],
6489
+ "state_mutability": "view"
6490
+ },
6491
+ {
6492
+ "type": "function",
6493
+ "name": "get_associated_club_id",
6494
+ "inputs": [],
6495
+ "outputs": [
6496
+ {
6497
+ "type": "core::integer::u256"
6498
+ }
6499
+ ],
6500
+ "state_mutability": "view"
6501
+ },
6502
+ {
6503
+ "type": "function",
6504
+ "name": "get_last_minted_id",
6505
+ "inputs": [],
6506
+ "outputs": [
6507
+ {
6508
+ "type": "core::integer::u256"
6509
+ }
6510
+ ],
6511
+ "state_mutability": "view"
6512
+ }
6513
+ ]
6514
+ },
6515
+ {
6516
+ "type": "impl",
6517
+ "name": "ERC721MixinImpl",
6518
+ "interface_name": "openzeppelin_token::erc721::interface::ERC721ABI"
6519
+ },
6520
+ {
6521
+ "type": "struct",
6522
+ "name": "core::array::Span::<core::felt252>",
6523
+ "members": [
6524
+ {
6525
+ "name": "snapshot",
6526
+ "type": "@core::array::Array::<core::felt252>"
6527
+ }
6528
+ ]
6529
+ },
6530
+ {
6531
+ "type": "struct",
6532
+ "name": "core::byte_array::ByteArray",
6533
+ "members": [
6534
+ {
6535
+ "name": "data",
6536
+ "type": "core::array::Array::<core::bytes_31::bytes31>"
6537
+ },
6538
+ {
6539
+ "name": "pending_word",
6540
+ "type": "core::felt252"
6541
+ },
6542
+ {
6543
+ "name": "pending_word_len",
6544
+ "type": "core::internal::bounded_int::BoundedInt::<0, 30>"
6545
+ }
6546
+ ]
6547
+ },
6548
+ {
6549
+ "type": "interface",
6550
+ "name": "openzeppelin_token::erc721::interface::ERC721ABI",
6551
+ "items": [
6552
+ {
6553
+ "type": "function",
6554
+ "name": "balance_of",
6555
+ "inputs": [
6556
+ {
6557
+ "name": "account",
6558
+ "type": "core::starknet::contract_address::ContractAddress"
6559
+ }
6560
+ ],
6561
+ "outputs": [
6562
+ {
6563
+ "type": "core::integer::u256"
6564
+ }
6565
+ ],
6566
+ "state_mutability": "view"
6567
+ },
6568
+ {
6569
+ "type": "function",
6570
+ "name": "owner_of",
6571
+ "inputs": [
6572
+ {
6573
+ "name": "token_id",
6574
+ "type": "core::integer::u256"
6575
+ }
6576
+ ],
6577
+ "outputs": [
6578
+ {
6579
+ "type": "core::starknet::contract_address::ContractAddress"
6580
+ }
6581
+ ],
6582
+ "state_mutability": "view"
6583
+ },
6584
+ {
6585
+ "type": "function",
6586
+ "name": "safe_transfer_from",
6587
+ "inputs": [
6588
+ {
6589
+ "name": "from",
6590
+ "type": "core::starknet::contract_address::ContractAddress"
6591
+ },
6592
+ {
6593
+ "name": "to",
6594
+ "type": "core::starknet::contract_address::ContractAddress"
6595
+ },
6596
+ {
6597
+ "name": "token_id",
6598
+ "type": "core::integer::u256"
6599
+ },
6600
+ {
6601
+ "name": "data",
6602
+ "type": "core::array::Span::<core::felt252>"
6603
+ }
6604
+ ],
6605
+ "outputs": [],
6606
+ "state_mutability": "external"
6607
+ },
6608
+ {
6609
+ "type": "function",
6610
+ "name": "transfer_from",
6611
+ "inputs": [
6612
+ {
6613
+ "name": "from",
6614
+ "type": "core::starknet::contract_address::ContractAddress"
6615
+ },
6616
+ {
6617
+ "name": "to",
6618
+ "type": "core::starknet::contract_address::ContractAddress"
6619
+ },
6620
+ {
6621
+ "name": "token_id",
6622
+ "type": "core::integer::u256"
6623
+ }
6624
+ ],
6625
+ "outputs": [],
6626
+ "state_mutability": "external"
6627
+ },
6628
+ {
6629
+ "type": "function",
6630
+ "name": "approve",
6631
+ "inputs": [
6632
+ {
6633
+ "name": "to",
6634
+ "type": "core::starknet::contract_address::ContractAddress"
6635
+ },
6636
+ {
6637
+ "name": "token_id",
6638
+ "type": "core::integer::u256"
6639
+ }
6640
+ ],
6641
+ "outputs": [],
6642
+ "state_mutability": "external"
6643
+ },
6644
+ {
6645
+ "type": "function",
6646
+ "name": "set_approval_for_all",
6647
+ "inputs": [
6648
+ {
6649
+ "name": "operator",
6650
+ "type": "core::starknet::contract_address::ContractAddress"
6651
+ },
6652
+ {
6653
+ "name": "approved",
6654
+ "type": "core::bool"
6655
+ }
6656
+ ],
6657
+ "outputs": [],
6658
+ "state_mutability": "external"
6659
+ },
6660
+ {
6661
+ "type": "function",
6662
+ "name": "get_approved",
6663
+ "inputs": [
6664
+ {
6665
+ "name": "token_id",
6666
+ "type": "core::integer::u256"
6667
+ }
6668
+ ],
6669
+ "outputs": [
6670
+ {
6671
+ "type": "core::starknet::contract_address::ContractAddress"
6672
+ }
6673
+ ],
6674
+ "state_mutability": "view"
6675
+ },
6676
+ {
6677
+ "type": "function",
6678
+ "name": "is_approved_for_all",
6679
+ "inputs": [
6680
+ {
6681
+ "name": "owner",
6682
+ "type": "core::starknet::contract_address::ContractAddress"
6683
+ },
6684
+ {
6685
+ "name": "operator",
6686
+ "type": "core::starknet::contract_address::ContractAddress"
6687
+ }
6688
+ ],
6689
+ "outputs": [
6690
+ {
6691
+ "type": "core::bool"
6692
+ }
6693
+ ],
6694
+ "state_mutability": "view"
6695
+ },
6696
+ {
6697
+ "type": "function",
6698
+ "name": "supports_interface",
6699
+ "inputs": [
6700
+ {
6701
+ "name": "interface_id",
6702
+ "type": "core::felt252"
6703
+ }
6704
+ ],
6705
+ "outputs": [
6706
+ {
6707
+ "type": "core::bool"
6708
+ }
6709
+ ],
6710
+ "state_mutability": "view"
6711
+ },
6712
+ {
6713
+ "type": "function",
6714
+ "name": "name",
6715
+ "inputs": [],
6716
+ "outputs": [
6717
+ {
6718
+ "type": "core::byte_array::ByteArray"
6719
+ }
6720
+ ],
6721
+ "state_mutability": "view"
6722
+ },
6723
+ {
6724
+ "type": "function",
6725
+ "name": "symbol",
6726
+ "inputs": [],
6727
+ "outputs": [
6728
+ {
6729
+ "type": "core::byte_array::ByteArray"
6730
+ }
6731
+ ],
6732
+ "state_mutability": "view"
6733
+ },
6734
+ {
6735
+ "type": "function",
6736
+ "name": "token_uri",
6737
+ "inputs": [
6738
+ {
6739
+ "name": "token_id",
6740
+ "type": "core::integer::u256"
6741
+ }
6742
+ ],
6743
+ "outputs": [
6744
+ {
6745
+ "type": "core::byte_array::ByteArray"
6746
+ }
6747
+ ],
6748
+ "state_mutability": "view"
6749
+ },
6750
+ {
6751
+ "type": "function",
6752
+ "name": "balanceOf",
6753
+ "inputs": [
6754
+ {
6755
+ "name": "account",
6756
+ "type": "core::starknet::contract_address::ContractAddress"
6757
+ }
6758
+ ],
6759
+ "outputs": [
6760
+ {
6761
+ "type": "core::integer::u256"
6762
+ }
6763
+ ],
6764
+ "state_mutability": "view"
6765
+ },
6766
+ {
6767
+ "type": "function",
6768
+ "name": "ownerOf",
6769
+ "inputs": [
6770
+ {
6771
+ "name": "tokenId",
6772
+ "type": "core::integer::u256"
6773
+ }
6774
+ ],
6775
+ "outputs": [
6776
+ {
6777
+ "type": "core::starknet::contract_address::ContractAddress"
6778
+ }
6779
+ ],
6780
+ "state_mutability": "view"
6781
+ },
6782
+ {
6783
+ "type": "function",
6784
+ "name": "safeTransferFrom",
6785
+ "inputs": [
6786
+ {
6787
+ "name": "from",
6788
+ "type": "core::starknet::contract_address::ContractAddress"
6789
+ },
6790
+ {
6791
+ "name": "to",
6792
+ "type": "core::starknet::contract_address::ContractAddress"
6793
+ },
6794
+ {
6795
+ "name": "tokenId",
6796
+ "type": "core::integer::u256"
6797
+ },
6798
+ {
6799
+ "name": "data",
6800
+ "type": "core::array::Span::<core::felt252>"
6801
+ }
6802
+ ],
6803
+ "outputs": [],
6804
+ "state_mutability": "external"
6805
+ },
6806
+ {
6807
+ "type": "function",
6808
+ "name": "transferFrom",
6809
+ "inputs": [
6810
+ {
6811
+ "name": "from",
6812
+ "type": "core::starknet::contract_address::ContractAddress"
6813
+ },
6814
+ {
6815
+ "name": "to",
6816
+ "type": "core::starknet::contract_address::ContractAddress"
6817
+ },
6818
+ {
6819
+ "name": "tokenId",
6820
+ "type": "core::integer::u256"
6821
+ }
6822
+ ],
6823
+ "outputs": [],
6824
+ "state_mutability": "external"
6825
+ },
6826
+ {
6827
+ "type": "function",
6828
+ "name": "setApprovalForAll",
6829
+ "inputs": [
6830
+ {
6831
+ "name": "operator",
6832
+ "type": "core::starknet::contract_address::ContractAddress"
6833
+ },
6834
+ {
6835
+ "name": "approved",
6836
+ "type": "core::bool"
6837
+ }
6838
+ ],
6839
+ "outputs": [],
6840
+ "state_mutability": "external"
6841
+ },
6842
+ {
6843
+ "type": "function",
6844
+ "name": "getApproved",
6845
+ "inputs": [
6846
+ {
6847
+ "name": "tokenId",
6848
+ "type": "core::integer::u256"
6849
+ }
6850
+ ],
6851
+ "outputs": [
6852
+ {
6853
+ "type": "core::starknet::contract_address::ContractAddress"
6854
+ }
6855
+ ],
6856
+ "state_mutability": "view"
6857
+ },
6858
+ {
6859
+ "type": "function",
6860
+ "name": "isApprovedForAll",
6861
+ "inputs": [
6862
+ {
6863
+ "name": "owner",
6864
+ "type": "core::starknet::contract_address::ContractAddress"
6865
+ },
6866
+ {
6867
+ "name": "operator",
6868
+ "type": "core::starknet::contract_address::ContractAddress"
6869
+ }
6870
+ ],
6871
+ "outputs": [
6872
+ {
6873
+ "type": "core::bool"
6874
+ }
6875
+ ],
6876
+ "state_mutability": "view"
6877
+ },
6878
+ {
6879
+ "type": "function",
6880
+ "name": "tokenURI",
6881
+ "inputs": [
6882
+ {
6883
+ "name": "tokenId",
6884
+ "type": "core::integer::u256"
6885
+ }
6886
+ ],
6887
+ "outputs": [
6888
+ {
6889
+ "type": "core::byte_array::ByteArray"
6890
+ }
6891
+ ],
6892
+ "state_mutability": "view"
6893
+ }
6894
+ ]
6895
+ },
6896
+ {
6897
+ "type": "constructor",
6898
+ "name": "constructor",
6899
+ "inputs": [
6900
+ {
6901
+ "name": "name",
6902
+ "type": "core::byte_array::ByteArray"
6903
+ },
6904
+ {
6905
+ "name": "symbol",
6906
+ "type": "core::byte_array::ByteArray"
6907
+ },
6908
+ {
6909
+ "name": "club_id",
6910
+ "type": "core::integer::u256"
6911
+ },
6912
+ {
6913
+ "name": "creator",
6914
+ "type": "core::starknet::contract_address::ContractAddress"
6915
+ },
6916
+ {
6917
+ "name": "ip_club_manager",
6918
+ "type": "core::starknet::contract_address::ContractAddress"
6919
+ },
6920
+ {
6921
+ "name": "metadata_uri",
6922
+ "type": "core::byte_array::ByteArray"
6923
+ }
6924
+ ]
6925
+ },
6926
+ {
6927
+ "type": "event",
6928
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Transfer",
6929
+ "kind": "struct",
6930
+ "members": [
6931
+ {
6932
+ "name": "from",
6933
+ "type": "core::starknet::contract_address::ContractAddress",
6934
+ "kind": "key"
6935
+ },
6936
+ {
6937
+ "name": "to",
6938
+ "type": "core::starknet::contract_address::ContractAddress",
6939
+ "kind": "key"
6940
+ },
6941
+ {
6942
+ "name": "token_id",
6943
+ "type": "core::integer::u256",
6944
+ "kind": "key"
6945
+ }
6946
+ ]
6947
+ },
6948
+ {
6949
+ "type": "event",
6950
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Approval",
6951
+ "kind": "struct",
6952
+ "members": [
6953
+ {
6954
+ "name": "owner",
6955
+ "type": "core::starknet::contract_address::ContractAddress",
6956
+ "kind": "key"
6957
+ },
6958
+ {
6959
+ "name": "approved",
6960
+ "type": "core::starknet::contract_address::ContractAddress",
6961
+ "kind": "key"
6962
+ },
6963
+ {
6964
+ "name": "token_id",
6965
+ "type": "core::integer::u256",
6966
+ "kind": "key"
6967
+ }
6968
+ ]
6969
+ },
6970
+ {
6971
+ "type": "event",
6972
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::ApprovalForAll",
6973
+ "kind": "struct",
6974
+ "members": [
6975
+ {
6976
+ "name": "owner",
6977
+ "type": "core::starknet::contract_address::ContractAddress",
6978
+ "kind": "key"
6979
+ },
6980
+ {
6981
+ "name": "operator",
6982
+ "type": "core::starknet::contract_address::ContractAddress",
6983
+ "kind": "key"
6984
+ },
6985
+ {
6986
+ "name": "approved",
6987
+ "type": "core::bool",
6988
+ "kind": "data"
6989
+ }
6990
+ ]
6991
+ },
6992
+ {
6993
+ "type": "event",
6994
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Event",
6995
+ "kind": "enum",
6996
+ "variants": [
6997
+ {
6998
+ "name": "Transfer",
6999
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Transfer",
7000
+ "kind": "nested"
7001
+ },
7002
+ {
7003
+ "name": "Approval",
7004
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Approval",
7005
+ "kind": "nested"
7006
+ },
7007
+ {
7008
+ "name": "ApprovalForAll",
7009
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::ApprovalForAll",
7010
+ "kind": "nested"
7011
+ }
7012
+ ]
7013
+ },
7014
+ {
7015
+ "type": "event",
7016
+ "name": "openzeppelin_introspection::src5::SRC5Component::Event",
7017
+ "kind": "enum",
7018
+ "variants": []
7019
+ },
7020
+ {
7021
+ "type": "event",
7022
+ "name": "ip_club::IPClubNFT::IPClubNFT::Event",
7023
+ "kind": "enum",
7024
+ "variants": [
7025
+ {
7026
+ "name": "ERC721Event",
7027
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Event",
7028
+ "kind": "flat"
7029
+ },
7030
+ {
7031
+ "name": "SRC5Event",
7032
+ "type": "openzeppelin_introspection::src5::SRC5Component::Event",
7033
+ "kind": "flat"
7034
+ }
7035
+ ]
7036
+ }
7037
+ ];
7038
+
7039
+ // src/abis/ipSponsorship.ts
7040
+ var IPSponsorshipABI = [
7041
+ {
7042
+ "type": "impl",
7043
+ "name": "IPSponsorshipImpl",
7044
+ "interface_name": "ip_sponsorship::interface::IIPSponsorship"
7045
+ },
7046
+ {
7047
+ "type": "struct",
7048
+ "name": "core::integer::u256",
7049
+ "members": [
7050
+ {
7051
+ "name": "low",
7052
+ "type": "core::integer::u128"
7053
+ },
7054
+ {
7055
+ "name": "high",
7056
+ "type": "core::integer::u128"
7057
+ }
7058
+ ]
7059
+ },
7060
+ {
7061
+ "type": "struct",
7062
+ "name": "core::byte_array::ByteArray",
7063
+ "members": [
7064
+ {
7065
+ "name": "data",
7066
+ "type": "core::array::Array::<core::bytes_31::bytes31>"
7067
+ },
7068
+ {
7069
+ "name": "pending_word",
7070
+ "type": "core::felt252"
7071
+ },
7072
+ {
7073
+ "name": "pending_word_len",
7074
+ "type": "core::internal::bounded_int::BoundedInt::<0, 30>"
7075
+ }
7076
+ ]
7077
+ },
7078
+ {
7079
+ "type": "enum",
7080
+ "name": "core::bool",
7081
+ "variants": [
7082
+ {
7083
+ "name": "False",
7084
+ "type": "()"
7085
+ },
7086
+ {
7087
+ "name": "True",
7088
+ "type": "()"
7089
+ }
7090
+ ]
7091
+ },
7092
+ {
7093
+ "type": "enum",
7094
+ "name": "core::option::Option::<core::starknet::contract_address::ContractAddress>",
7095
+ "variants": [
7096
+ {
7097
+ "name": "Some",
7098
+ "type": "core::starknet::contract_address::ContractAddress"
7099
+ },
7100
+ {
7101
+ "name": "None",
7102
+ "type": "()"
7103
+ }
7104
+ ]
7105
+ },
7106
+ {
7107
+ "type": "struct",
7108
+ "name": "ip_sponsorship::types::SponsorshipOffer",
7109
+ "members": [
7110
+ {
7111
+ "name": "author",
7112
+ "type": "core::starknet::contract_address::ContractAddress"
7113
+ },
7114
+ {
7115
+ "name": "nft_contract",
7116
+ "type": "core::starknet::contract_address::ContractAddress"
7117
+ },
7118
+ {
7119
+ "name": "token_id",
7120
+ "type": "core::integer::u256"
7121
+ },
7122
+ {
7123
+ "name": "min_amount",
7124
+ "type": "core::integer::u256"
7125
+ },
7126
+ {
7127
+ "name": "duration",
7128
+ "type": "core::integer::u64"
7129
+ },
7130
+ {
7131
+ "name": "payment_token",
7132
+ "type": "core::starknet::contract_address::ContractAddress"
7133
+ },
7134
+ {
7135
+ "name": "license_terms_uri",
7136
+ "type": "core::byte_array::ByteArray"
7137
+ },
7138
+ {
7139
+ "name": "transferable",
7140
+ "type": "core::bool"
7141
+ },
7142
+ {
7143
+ "name": "specific_sponsor",
7144
+ "type": "core::option::Option::<core::starknet::contract_address::ContractAddress>"
7145
+ },
7146
+ {
7147
+ "name": "open",
7148
+ "type": "core::bool"
7149
+ }
7150
+ ]
7151
+ },
7152
+ {
7153
+ "type": "struct",
7154
+ "name": "ip_sponsorship::types::License",
7155
+ "members": [
7156
+ {
7157
+ "name": "author",
7158
+ "type": "core::starknet::contract_address::ContractAddress"
7159
+ },
7160
+ {
7161
+ "name": "sponsor",
7162
+ "type": "core::starknet::contract_address::ContractAddress"
7163
+ },
7164
+ {
7165
+ "name": "nft_contract",
7166
+ "type": "core::starknet::contract_address::ContractAddress"
7167
+ },
7168
+ {
7169
+ "name": "token_id",
7170
+ "type": "core::integer::u256"
7171
+ },
7172
+ {
7173
+ "name": "amount_paid",
7174
+ "type": "core::integer::u256"
7175
+ },
7176
+ {
7177
+ "name": "expires_at",
7178
+ "type": "core::integer::u64"
7179
+ },
7180
+ {
7181
+ "name": "transferable",
7182
+ "type": "core::bool"
7183
+ },
7184
+ {
7185
+ "name": "license_terms_uri",
7186
+ "type": "core::byte_array::ByteArray"
7187
+ }
7188
+ ]
7189
+ },
7190
+ {
7191
+ "type": "interface",
7192
+ "name": "ip_sponsorship::interface::IIPSponsorship",
7193
+ "items": [
7194
+ {
7195
+ "type": "function",
7196
+ "name": "create_offer",
7197
+ "inputs": [
7198
+ {
7199
+ "name": "nft_contract",
7200
+ "type": "core::starknet::contract_address::ContractAddress"
7201
+ },
7202
+ {
7203
+ "name": "token_id",
7204
+ "type": "core::integer::u256"
7205
+ },
7206
+ {
7207
+ "name": "min_amount",
7208
+ "type": "core::integer::u256"
7209
+ },
7210
+ {
7211
+ "name": "duration",
7212
+ "type": "core::integer::u64"
7213
+ },
7214
+ {
7215
+ "name": "payment_token",
7216
+ "type": "core::starknet::contract_address::ContractAddress"
7217
+ },
7218
+ {
7219
+ "name": "license_terms_uri",
7220
+ "type": "core::byte_array::ByteArray"
7221
+ },
7222
+ {
7223
+ "name": "transferable",
7224
+ "type": "core::bool"
7225
+ },
7226
+ {
7227
+ "name": "specific_sponsor",
7228
+ "type": "core::option::Option::<core::starknet::contract_address::ContractAddress>"
7229
+ }
7230
+ ],
7231
+ "outputs": [
7232
+ {
7233
+ "type": "core::integer::u256"
7234
+ }
7235
+ ],
7236
+ "state_mutability": "external"
7237
+ },
7238
+ {
7239
+ "type": "function",
7240
+ "name": "set_offer_open",
7241
+ "inputs": [
7242
+ {
7243
+ "name": "offer_id",
7244
+ "type": "core::integer::u256"
7245
+ },
7246
+ {
7247
+ "name": "open",
7248
+ "type": "core::bool"
7249
+ }
7250
+ ],
7251
+ "outputs": [],
7252
+ "state_mutability": "external"
7253
+ },
7254
+ {
7255
+ "type": "function",
7256
+ "name": "place_bid",
7257
+ "inputs": [
7258
+ {
7259
+ "name": "offer_id",
7260
+ "type": "core::integer::u256"
7261
+ },
7262
+ {
7263
+ "name": "amount",
7264
+ "type": "core::integer::u256"
7265
+ }
7266
+ ],
7267
+ "outputs": [],
7268
+ "state_mutability": "external"
7269
+ },
7270
+ {
7271
+ "type": "function",
7272
+ "name": "retract_bid",
7273
+ "inputs": [
7274
+ {
7275
+ "name": "offer_id",
7276
+ "type": "core::integer::u256"
7277
+ }
7278
+ ],
7279
+ "outputs": [],
7280
+ "state_mutability": "external"
7281
+ },
7282
+ {
7283
+ "type": "function",
7284
+ "name": "accept_bid",
7285
+ "inputs": [
7286
+ {
7287
+ "name": "offer_id",
7288
+ "type": "core::integer::u256"
7289
+ },
7290
+ {
7291
+ "name": "sponsor",
7292
+ "type": "core::starknet::contract_address::ContractAddress"
7293
+ }
7294
+ ],
7295
+ "outputs": [
7296
+ {
7297
+ "type": "core::integer::u256"
7298
+ }
7299
+ ],
7300
+ "state_mutability": "external"
7301
+ },
7302
+ {
7303
+ "type": "function",
7304
+ "name": "transfer_license",
7305
+ "inputs": [
7306
+ {
7307
+ "name": "license_id",
7308
+ "type": "core::integer::u256"
7309
+ },
7310
+ {
7311
+ "name": "to",
7312
+ "type": "core::starknet::contract_address::ContractAddress"
7313
+ }
7314
+ ],
7315
+ "outputs": [],
7316
+ "state_mutability": "external"
7317
+ },
7318
+ {
7319
+ "type": "function",
7320
+ "name": "get_offer",
7321
+ "inputs": [
7322
+ {
7323
+ "name": "offer_id",
7324
+ "type": "core::integer::u256"
7325
+ }
7326
+ ],
7327
+ "outputs": [
7328
+ {
7329
+ "type": "ip_sponsorship::types::SponsorshipOffer"
7330
+ }
7331
+ ],
7332
+ "state_mutability": "view"
7333
+ },
7334
+ {
7335
+ "type": "function",
7336
+ "name": "get_bid",
7337
+ "inputs": [
7338
+ {
7339
+ "name": "offer_id",
7340
+ "type": "core::integer::u256"
7341
+ },
7342
+ {
7343
+ "name": "sponsor",
7344
+ "type": "core::starknet::contract_address::ContractAddress"
7345
+ }
7346
+ ],
7347
+ "outputs": [
7348
+ {
7349
+ "type": "core::integer::u256"
7350
+ }
7351
+ ],
7352
+ "state_mutability": "view"
7353
+ },
7354
+ {
7355
+ "type": "function",
7356
+ "name": "get_license",
7357
+ "inputs": [
7358
+ {
7359
+ "name": "license_id",
7360
+ "type": "core::integer::u256"
7361
+ }
7362
+ ],
7363
+ "outputs": [
7364
+ {
7365
+ "type": "ip_sponsorship::types::License"
7366
+ }
7367
+ ],
7368
+ "state_mutability": "view"
7369
+ },
7370
+ {
7371
+ "type": "function",
7372
+ "name": "is_license_valid",
7373
+ "inputs": [
7374
+ {
7375
+ "name": "license_id",
7376
+ "type": "core::integer::u256"
7377
+ }
7378
+ ],
7379
+ "outputs": [
7380
+ {
7381
+ "type": "core::bool"
7382
+ }
7383
+ ],
7384
+ "state_mutability": "view"
7385
+ },
7386
+ {
7387
+ "type": "function",
7388
+ "name": "get_last_offer_id",
7389
+ "inputs": [],
7390
+ "outputs": [
7391
+ {
7392
+ "type": "core::integer::u256"
7393
+ }
7394
+ ],
7395
+ "state_mutability": "view"
7396
+ },
7397
+ {
7398
+ "type": "function",
7399
+ "name": "get_last_license_id",
7400
+ "inputs": [],
7401
+ "outputs": [
7402
+ {
7403
+ "type": "core::integer::u256"
7404
+ }
7405
+ ],
7406
+ "state_mutability": "view"
7407
+ }
7408
+ ]
7409
+ },
7410
+ {
7411
+ "type": "impl",
7412
+ "name": "SRC5Impl",
7413
+ "interface_name": "openzeppelin_introspection::interface::ISRC5"
7414
+ },
7415
+ {
7416
+ "type": "interface",
7417
+ "name": "openzeppelin_introspection::interface::ISRC5",
7418
+ "items": [
7419
+ {
7420
+ "type": "function",
7421
+ "name": "supports_interface",
7422
+ "inputs": [
7423
+ {
7424
+ "name": "interface_id",
7425
+ "type": "core::felt252"
7426
+ }
7427
+ ],
7428
+ "outputs": [
7429
+ {
7430
+ "type": "core::bool"
7431
+ }
7432
+ ],
7433
+ "state_mutability": "view"
7434
+ }
7435
+ ]
7436
+ },
7437
+ {
7438
+ "type": "constructor",
7439
+ "name": "constructor",
7440
+ "inputs": []
7441
+ },
7442
+ {
7443
+ "type": "event",
7444
+ "name": "openzeppelin_introspection::src5::SRC5Component::Event",
7445
+ "kind": "enum",
7446
+ "variants": []
7447
+ },
7448
+ {
7449
+ "type": "event",
7450
+ "name": "ip_sponsorship::IPSponsorship::IPSponsorship::OfferCreated",
7451
+ "kind": "struct",
7452
+ "members": [
7453
+ {
7454
+ "name": "offer_id",
7455
+ "type": "core::integer::u256",
7456
+ "kind": "key"
7457
+ },
7458
+ {
7459
+ "name": "author",
7460
+ "type": "core::starknet::contract_address::ContractAddress",
7461
+ "kind": "key"
7462
+ },
7463
+ {
7464
+ "name": "nft_contract",
7465
+ "type": "core::starknet::contract_address::ContractAddress",
7466
+ "kind": "key"
7467
+ },
7468
+ {
7469
+ "name": "token_id",
7470
+ "type": "core::integer::u256",
7471
+ "kind": "data"
7472
+ },
7473
+ {
7474
+ "name": "min_amount",
7475
+ "type": "core::integer::u256",
7476
+ "kind": "data"
7477
+ },
7478
+ {
7479
+ "name": "duration",
7480
+ "type": "core::integer::u64",
7481
+ "kind": "data"
7482
+ },
7483
+ {
7484
+ "name": "payment_token",
7485
+ "type": "core::starknet::contract_address::ContractAddress",
7486
+ "kind": "data"
7487
+ },
7488
+ {
7489
+ "name": "license_terms_uri",
7490
+ "type": "core::byte_array::ByteArray",
7491
+ "kind": "data"
7492
+ },
7493
+ {
7494
+ "name": "transferable",
7495
+ "type": "core::bool",
7496
+ "kind": "data"
7497
+ },
7498
+ {
7499
+ "name": "specific_sponsor",
7500
+ "type": "core::option::Option::<core::starknet::contract_address::ContractAddress>",
7501
+ "kind": "data"
7502
+ },
7503
+ {
7504
+ "name": "created_at",
7505
+ "type": "core::integer::u64",
7506
+ "kind": "data"
7507
+ }
7508
+ ]
7509
+ },
7510
+ {
7511
+ "type": "event",
7512
+ "name": "ip_sponsorship::IPSponsorship::IPSponsorship::OfferStatusUpdated",
7513
+ "kind": "struct",
7514
+ "members": [
7515
+ {
7516
+ "name": "offer_id",
7517
+ "type": "core::integer::u256",
7518
+ "kind": "key"
7519
+ },
7520
+ {
7521
+ "name": "open",
7522
+ "type": "core::bool",
7523
+ "kind": "data"
7524
+ },
7525
+ {
7526
+ "name": "updated_at",
7527
+ "type": "core::integer::u64",
7528
+ "kind": "data"
7529
+ }
7530
+ ]
7531
+ },
7532
+ {
7533
+ "type": "event",
7534
+ "name": "ip_sponsorship::IPSponsorship::IPSponsorship::BidPlaced",
7535
+ "kind": "struct",
7536
+ "members": [
7537
+ {
7538
+ "name": "offer_id",
7539
+ "type": "core::integer::u256",
7540
+ "kind": "key"
7541
+ },
7542
+ {
7543
+ "name": "sponsor",
7544
+ "type": "core::starknet::contract_address::ContractAddress",
7545
+ "kind": "key"
7546
+ },
7547
+ {
7548
+ "name": "amount",
7549
+ "type": "core::integer::u256",
7550
+ "kind": "data"
7551
+ },
7552
+ {
7553
+ "name": "bid_at",
7554
+ "type": "core::integer::u64",
7555
+ "kind": "data"
7556
+ }
7557
+ ]
7558
+ },
7559
+ {
7560
+ "type": "event",
7561
+ "name": "ip_sponsorship::IPSponsorship::IPSponsorship::BidRetracted",
7562
+ "kind": "struct",
7563
+ "members": [
7564
+ {
7565
+ "name": "offer_id",
7566
+ "type": "core::integer::u256",
7567
+ "kind": "key"
7568
+ },
7569
+ {
7570
+ "name": "sponsor",
7571
+ "type": "core::starknet::contract_address::ContractAddress",
7572
+ "kind": "key"
7573
+ },
7574
+ {
7575
+ "name": "retracted_at",
7576
+ "type": "core::integer::u64",
7577
+ "kind": "data"
7578
+ }
7579
+ ]
7580
+ },
7581
+ {
7582
+ "type": "event",
7583
+ "name": "ip_sponsorship::IPSponsorship::IPSponsorship::SponsorshipAccepted",
7584
+ "kind": "struct",
7585
+ "members": [
7586
+ {
7587
+ "name": "offer_id",
7588
+ "type": "core::integer::u256",
7589
+ "kind": "key"
7590
+ },
7591
+ {
7592
+ "name": "license_id",
7593
+ "type": "core::integer::u256",
7594
+ "kind": "key"
7595
+ },
7596
+ {
7597
+ "name": "sponsor",
7598
+ "type": "core::starknet::contract_address::ContractAddress",
7599
+ "kind": "key"
7600
+ },
7601
+ {
7602
+ "name": "author",
7603
+ "type": "core::starknet::contract_address::ContractAddress",
7604
+ "kind": "data"
7605
+ },
7606
+ {
7607
+ "name": "amount",
7608
+ "type": "core::integer::u256",
7609
+ "kind": "data"
7610
+ },
7611
+ {
7612
+ "name": "expires_at",
7613
+ "type": "core::integer::u64",
7614
+ "kind": "data"
7615
+ }
7616
+ ]
7617
+ },
7618
+ {
7619
+ "type": "event",
7620
+ "name": "ip_sponsorship::IPSponsorship::IPSponsorship::LicenseTransferred",
7621
+ "kind": "struct",
7622
+ "members": [
7623
+ {
7624
+ "name": "license_id",
7625
+ "type": "core::integer::u256",
7626
+ "kind": "key"
7627
+ },
7628
+ {
7629
+ "name": "from",
7630
+ "type": "core::starknet::contract_address::ContractAddress",
7631
+ "kind": "key"
7632
+ },
7633
+ {
7634
+ "name": "to",
7635
+ "type": "core::starknet::contract_address::ContractAddress",
7636
+ "kind": "key"
7637
+ },
7638
+ {
7639
+ "name": "transferred_at",
7640
+ "type": "core::integer::u64",
7641
+ "kind": "data"
7642
+ }
7643
+ ]
7644
+ },
7645
+ {
7646
+ "type": "event",
7647
+ "name": "ip_sponsorship::IPSponsorship::IPSponsorship::Event",
7648
+ "kind": "enum",
7649
+ "variants": [
7650
+ {
7651
+ "name": "SRC5Event",
7652
+ "type": "openzeppelin_introspection::src5::SRC5Component::Event",
7653
+ "kind": "flat"
7654
+ },
7655
+ {
7656
+ "name": "OfferCreated",
7657
+ "type": "ip_sponsorship::IPSponsorship::IPSponsorship::OfferCreated",
7658
+ "kind": "nested"
7659
+ },
7660
+ {
7661
+ "name": "OfferStatusUpdated",
7662
+ "type": "ip_sponsorship::IPSponsorship::IPSponsorship::OfferStatusUpdated",
7663
+ "kind": "nested"
7664
+ },
7665
+ {
7666
+ "name": "BidPlaced",
7667
+ "type": "ip_sponsorship::IPSponsorship::IPSponsorship::BidPlaced",
7668
+ "kind": "nested"
7669
+ },
7670
+ {
7671
+ "name": "BidRetracted",
7672
+ "type": "ip_sponsorship::IPSponsorship::IPSponsorship::BidRetracted",
7673
+ "kind": "nested"
7674
+ },
7675
+ {
7676
+ "name": "SponsorshipAccepted",
7677
+ "type": "ip_sponsorship::IPSponsorship::IPSponsorship::SponsorshipAccepted",
7678
+ "kind": "nested"
7679
+ },
7680
+ {
7681
+ "name": "LicenseTransferred",
7682
+ "type": "ip_sponsorship::IPSponsorship::IPSponsorship::LicenseTransferred",
7683
+ "kind": "nested"
7684
+ }
7685
+ ]
7686
+ }
7687
+ ];
7688
+
7689
+ // src/abis/ipGenesis.ts
7690
+ var IPGenesisABI = [
7691
+ {
7692
+ "type": "impl",
7693
+ "name": "MIPImpl",
7694
+ "interface_name": "mip::interfaces::IMIP"
7695
+ },
7696
+ {
7697
+ "type": "struct",
7698
+ "name": "core::byte_array::ByteArray",
7699
+ "members": [
7700
+ {
7701
+ "name": "data",
7702
+ "type": "core::array::Array::<core::bytes_31::bytes31>"
7703
+ },
7704
+ {
7705
+ "name": "pending_word",
7706
+ "type": "core::felt252"
7707
+ },
7708
+ {
7709
+ "name": "pending_word_len",
7710
+ "type": "core::internal::bounded_int::BoundedInt::<0, 30>"
7711
+ }
7712
+ ]
7713
+ },
7714
+ {
7715
+ "type": "struct",
7716
+ "name": "core::integer::u256",
7717
+ "members": [
7718
+ {
7719
+ "name": "low",
7720
+ "type": "core::integer::u128"
7721
+ },
7722
+ {
7723
+ "name": "high",
7724
+ "type": "core::integer::u128"
7725
+ }
7726
+ ]
7727
+ },
7728
+ {
7729
+ "type": "interface",
7730
+ "name": "mip::interfaces::IMIP",
7731
+ "items": [
7732
+ {
7733
+ "type": "function",
7734
+ "name": "mint_item",
7735
+ "inputs": [
7736
+ {
7737
+ "name": "recipient",
7738
+ "type": "core::starknet::contract_address::ContractAddress"
7739
+ },
7740
+ {
7741
+ "name": "uri",
7742
+ "type": "core::byte_array::ByteArray"
7743
+ }
7744
+ ],
7745
+ "outputs": [
7746
+ {
7747
+ "type": "core::integer::u256"
7748
+ }
7749
+ ],
7750
+ "state_mutability": "external"
7751
+ }
7752
+ ]
7753
+ },
7754
+ {
7755
+ "type": "impl",
7756
+ "name": "CounterImpl",
7757
+ "interface_name": "mip::interfaces::ICounter"
7758
+ },
7759
+ {
7760
+ "type": "interface",
7761
+ "name": "mip::interfaces::ICounter",
7762
+ "items": [
7763
+ {
7764
+ "type": "function",
7765
+ "name": "current",
7766
+ "inputs": [],
7767
+ "outputs": [
7768
+ {
7769
+ "type": "core::integer::u256"
7770
+ }
7771
+ ],
7772
+ "state_mutability": "view"
7773
+ },
7774
+ {
7775
+ "type": "function",
7776
+ "name": "increment",
7777
+ "inputs": [],
7778
+ "outputs": [],
7779
+ "state_mutability": "external"
7780
+ },
7781
+ {
7782
+ "type": "function",
7783
+ "name": "decrement",
7784
+ "inputs": [],
7785
+ "outputs": [],
7786
+ "state_mutability": "external"
7787
+ }
7788
+ ]
7789
+ },
7790
+ {
7791
+ "type": "impl",
7792
+ "name": "ERC721MixinImpl",
7793
+ "interface_name": "openzeppelin_token::erc721::interface::ERC721ABI"
7794
+ },
7795
+ {
7796
+ "type": "struct",
7797
+ "name": "core::array::Span::<core::felt252>",
7798
+ "members": [
7799
+ {
7800
+ "name": "snapshot",
7801
+ "type": "@core::array::Array::<core::felt252>"
7802
+ }
7803
+ ]
7804
+ },
7805
+ {
7806
+ "type": "enum",
7807
+ "name": "core::bool",
7808
+ "variants": [
7809
+ {
7810
+ "name": "False",
7811
+ "type": "()"
7812
+ },
7813
+ {
7814
+ "name": "True",
7815
+ "type": "()"
7816
+ }
7817
+ ]
7818
+ },
7819
+ {
7820
+ "type": "interface",
7821
+ "name": "openzeppelin_token::erc721::interface::ERC721ABI",
7822
+ "items": [
7823
+ {
7824
+ "type": "function",
7825
+ "name": "balance_of",
7826
+ "inputs": [
7827
+ {
7828
+ "name": "account",
7829
+ "type": "core::starknet::contract_address::ContractAddress"
7830
+ }
7831
+ ],
7832
+ "outputs": [
7833
+ {
7834
+ "type": "core::integer::u256"
7835
+ }
7836
+ ],
7837
+ "state_mutability": "view"
7838
+ },
7839
+ {
7840
+ "type": "function",
7841
+ "name": "owner_of",
7842
+ "inputs": [
7843
+ {
7844
+ "name": "token_id",
7845
+ "type": "core::integer::u256"
7846
+ }
7847
+ ],
7848
+ "outputs": [
7849
+ {
7850
+ "type": "core::starknet::contract_address::ContractAddress"
7851
+ }
7852
+ ],
7853
+ "state_mutability": "view"
7854
+ },
7855
+ {
7856
+ "type": "function",
7857
+ "name": "safe_transfer_from",
7858
+ "inputs": [
7859
+ {
7860
+ "name": "from",
7861
+ "type": "core::starknet::contract_address::ContractAddress"
7862
+ },
7863
+ {
7864
+ "name": "to",
7865
+ "type": "core::starknet::contract_address::ContractAddress"
7866
+ },
7867
+ {
7868
+ "name": "token_id",
7869
+ "type": "core::integer::u256"
7870
+ },
7871
+ {
7872
+ "name": "data",
7873
+ "type": "core::array::Span::<core::felt252>"
7874
+ }
7875
+ ],
7876
+ "outputs": [],
7877
+ "state_mutability": "external"
7878
+ },
7879
+ {
7880
+ "type": "function",
7881
+ "name": "transfer_from",
7882
+ "inputs": [
7883
+ {
7884
+ "name": "from",
7885
+ "type": "core::starknet::contract_address::ContractAddress"
7886
+ },
7887
+ {
7888
+ "name": "to",
7889
+ "type": "core::starknet::contract_address::ContractAddress"
7890
+ },
7891
+ {
7892
+ "name": "token_id",
7893
+ "type": "core::integer::u256"
7894
+ }
7895
+ ],
7896
+ "outputs": [],
7897
+ "state_mutability": "external"
7898
+ },
7899
+ {
7900
+ "type": "function",
7901
+ "name": "approve",
7902
+ "inputs": [
7903
+ {
7904
+ "name": "to",
7905
+ "type": "core::starknet::contract_address::ContractAddress"
7906
+ },
7907
+ {
7908
+ "name": "token_id",
7909
+ "type": "core::integer::u256"
7910
+ }
7911
+ ],
7912
+ "outputs": [],
7913
+ "state_mutability": "external"
7914
+ },
7915
+ {
7916
+ "type": "function",
7917
+ "name": "set_approval_for_all",
7918
+ "inputs": [
7919
+ {
7920
+ "name": "operator",
7921
+ "type": "core::starknet::contract_address::ContractAddress"
7922
+ },
7923
+ {
7924
+ "name": "approved",
7925
+ "type": "core::bool"
7926
+ }
7927
+ ],
7928
+ "outputs": [],
7929
+ "state_mutability": "external"
7930
+ },
7931
+ {
7932
+ "type": "function",
7933
+ "name": "get_approved",
7934
+ "inputs": [
7935
+ {
7936
+ "name": "token_id",
7937
+ "type": "core::integer::u256"
7938
+ }
7939
+ ],
7940
+ "outputs": [
7941
+ {
7942
+ "type": "core::starknet::contract_address::ContractAddress"
7943
+ }
7944
+ ],
7945
+ "state_mutability": "view"
7946
+ },
7947
+ {
7948
+ "type": "function",
7949
+ "name": "is_approved_for_all",
7950
+ "inputs": [
7951
+ {
7952
+ "name": "owner",
7953
+ "type": "core::starknet::contract_address::ContractAddress"
7954
+ },
7955
+ {
7956
+ "name": "operator",
7957
+ "type": "core::starknet::contract_address::ContractAddress"
7958
+ }
7959
+ ],
7960
+ "outputs": [
7961
+ {
7962
+ "type": "core::bool"
7963
+ }
7964
+ ],
7965
+ "state_mutability": "view"
7966
+ },
7967
+ {
7968
+ "type": "function",
7969
+ "name": "supports_interface",
7970
+ "inputs": [
7971
+ {
7972
+ "name": "interface_id",
7973
+ "type": "core::felt252"
7974
+ }
7975
+ ],
7976
+ "outputs": [
7977
+ {
7978
+ "type": "core::bool"
7979
+ }
7980
+ ],
7981
+ "state_mutability": "view"
7982
+ },
7983
+ {
7984
+ "type": "function",
7985
+ "name": "name",
7986
+ "inputs": [],
7987
+ "outputs": [
7988
+ {
7989
+ "type": "core::byte_array::ByteArray"
7990
+ }
7991
+ ],
7992
+ "state_mutability": "view"
7993
+ },
7994
+ {
7995
+ "type": "function",
7996
+ "name": "symbol",
7997
+ "inputs": [],
7998
+ "outputs": [
7999
+ {
8000
+ "type": "core::byte_array::ByteArray"
8001
+ }
8002
+ ],
8003
+ "state_mutability": "view"
8004
+ },
8005
+ {
8006
+ "type": "function",
8007
+ "name": "token_uri",
8008
+ "inputs": [
8009
+ {
8010
+ "name": "token_id",
8011
+ "type": "core::integer::u256"
8012
+ }
8013
+ ],
8014
+ "outputs": [
8015
+ {
8016
+ "type": "core::byte_array::ByteArray"
8017
+ }
8018
+ ],
8019
+ "state_mutability": "view"
8020
+ },
8021
+ {
8022
+ "type": "function",
8023
+ "name": "balanceOf",
8024
+ "inputs": [
8025
+ {
8026
+ "name": "account",
8027
+ "type": "core::starknet::contract_address::ContractAddress"
8028
+ }
8029
+ ],
8030
+ "outputs": [
8031
+ {
8032
+ "type": "core::integer::u256"
8033
+ }
8034
+ ],
8035
+ "state_mutability": "view"
8036
+ },
8037
+ {
8038
+ "type": "function",
8039
+ "name": "ownerOf",
8040
+ "inputs": [
8041
+ {
8042
+ "name": "tokenId",
8043
+ "type": "core::integer::u256"
8044
+ }
8045
+ ],
8046
+ "outputs": [
8047
+ {
8048
+ "type": "core::starknet::contract_address::ContractAddress"
8049
+ }
8050
+ ],
8051
+ "state_mutability": "view"
8052
+ },
8053
+ {
8054
+ "type": "function",
8055
+ "name": "safeTransferFrom",
8056
+ "inputs": [
8057
+ {
8058
+ "name": "from",
8059
+ "type": "core::starknet::contract_address::ContractAddress"
8060
+ },
8061
+ {
8062
+ "name": "to",
8063
+ "type": "core::starknet::contract_address::ContractAddress"
8064
+ },
8065
+ {
8066
+ "name": "tokenId",
8067
+ "type": "core::integer::u256"
8068
+ },
8069
+ {
8070
+ "name": "data",
8071
+ "type": "core::array::Span::<core::felt252>"
8072
+ }
8073
+ ],
8074
+ "outputs": [],
8075
+ "state_mutability": "external"
8076
+ },
8077
+ {
8078
+ "type": "function",
8079
+ "name": "transferFrom",
8080
+ "inputs": [
8081
+ {
8082
+ "name": "from",
8083
+ "type": "core::starknet::contract_address::ContractAddress"
8084
+ },
8085
+ {
8086
+ "name": "to",
8087
+ "type": "core::starknet::contract_address::ContractAddress"
8088
+ },
8089
+ {
8090
+ "name": "tokenId",
8091
+ "type": "core::integer::u256"
8092
+ }
8093
+ ],
8094
+ "outputs": [],
8095
+ "state_mutability": "external"
8096
+ },
8097
+ {
8098
+ "type": "function",
8099
+ "name": "setApprovalForAll",
8100
+ "inputs": [
8101
+ {
8102
+ "name": "operator",
8103
+ "type": "core::starknet::contract_address::ContractAddress"
8104
+ },
8105
+ {
8106
+ "name": "approved",
8107
+ "type": "core::bool"
8108
+ }
8109
+ ],
8110
+ "outputs": [],
8111
+ "state_mutability": "external"
8112
+ },
8113
+ {
8114
+ "type": "function",
8115
+ "name": "getApproved",
8116
+ "inputs": [
8117
+ {
8118
+ "name": "tokenId",
8119
+ "type": "core::integer::u256"
8120
+ }
8121
+ ],
8122
+ "outputs": [
8123
+ {
8124
+ "type": "core::starknet::contract_address::ContractAddress"
8125
+ }
8126
+ ],
8127
+ "state_mutability": "view"
8128
+ },
8129
+ {
8130
+ "type": "function",
8131
+ "name": "isApprovedForAll",
8132
+ "inputs": [
8133
+ {
8134
+ "name": "owner",
8135
+ "type": "core::starknet::contract_address::ContractAddress"
8136
+ },
8137
+ {
8138
+ "name": "operator",
8139
+ "type": "core::starknet::contract_address::ContractAddress"
8140
+ }
8141
+ ],
8142
+ "outputs": [
8143
+ {
8144
+ "type": "core::bool"
8145
+ }
8146
+ ],
8147
+ "state_mutability": "view"
8148
+ },
8149
+ {
8150
+ "type": "function",
8151
+ "name": "tokenURI",
8152
+ "inputs": [
8153
+ {
8154
+ "name": "tokenId",
8155
+ "type": "core::integer::u256"
8156
+ }
8157
+ ],
8158
+ "outputs": [
8159
+ {
8160
+ "type": "core::byte_array::ByteArray"
8161
+ }
8162
+ ],
8163
+ "state_mutability": "view"
8164
+ }
8165
+ ]
8166
+ },
8167
+ {
8168
+ "type": "impl",
8169
+ "name": "OwnableMixinImpl",
8170
+ "interface_name": "openzeppelin_access::ownable::interface::OwnableABI"
8171
+ },
8172
+ {
8173
+ "type": "interface",
8174
+ "name": "openzeppelin_access::ownable::interface::OwnableABI",
8175
+ "items": [
8176
+ {
8177
+ "type": "function",
8178
+ "name": "owner",
8179
+ "inputs": [],
8180
+ "outputs": [
8181
+ {
8182
+ "type": "core::starknet::contract_address::ContractAddress"
8183
+ }
8184
+ ],
8185
+ "state_mutability": "view"
8186
+ },
8187
+ {
8188
+ "type": "function",
8189
+ "name": "transfer_ownership",
8190
+ "inputs": [
8191
+ {
8192
+ "name": "new_owner",
8193
+ "type": "core::starknet::contract_address::ContractAddress"
8194
+ }
8195
+ ],
8196
+ "outputs": [],
8197
+ "state_mutability": "external"
8198
+ },
8199
+ {
8200
+ "type": "function",
8201
+ "name": "renounce_ownership",
8202
+ "inputs": [],
8203
+ "outputs": [],
8204
+ "state_mutability": "external"
8205
+ },
8206
+ {
8207
+ "type": "function",
8208
+ "name": "transferOwnership",
8209
+ "inputs": [
8210
+ {
8211
+ "name": "newOwner",
8212
+ "type": "core::starknet::contract_address::ContractAddress"
8213
+ }
8214
+ ],
8215
+ "outputs": [],
8216
+ "state_mutability": "external"
8217
+ },
8218
+ {
8219
+ "type": "function",
8220
+ "name": "renounceOwnership",
8221
+ "inputs": [],
8222
+ "outputs": [],
8223
+ "state_mutability": "external"
8224
+ }
8225
+ ]
8226
+ },
8227
+ {
8228
+ "type": "impl",
8229
+ "name": "ERC721EnumerableImpl",
8230
+ "interface_name": "openzeppelin_token::erc721::extensions::erc721_enumerable::interface::IERC721Enumerable"
8231
+ },
8232
+ {
8233
+ "type": "interface",
8234
+ "name": "openzeppelin_token::erc721::extensions::erc721_enumerable::interface::IERC721Enumerable",
8235
+ "items": [
8236
+ {
8237
+ "type": "function",
8238
+ "name": "total_supply",
8239
+ "inputs": [],
8240
+ "outputs": [
8241
+ {
8242
+ "type": "core::integer::u256"
8243
+ }
8244
+ ],
8245
+ "state_mutability": "view"
8246
+ },
8247
+ {
8248
+ "type": "function",
8249
+ "name": "token_by_index",
8250
+ "inputs": [
8251
+ {
8252
+ "name": "index",
8253
+ "type": "core::integer::u256"
8254
+ }
8255
+ ],
8256
+ "outputs": [
8257
+ {
8258
+ "type": "core::integer::u256"
8259
+ }
8260
+ ],
8261
+ "state_mutability": "view"
8262
+ },
8263
+ {
8264
+ "type": "function",
8265
+ "name": "token_of_owner_by_index",
8266
+ "inputs": [
8267
+ {
8268
+ "name": "owner",
8269
+ "type": "core::starknet::contract_address::ContractAddress"
8270
+ },
8271
+ {
8272
+ "name": "index",
8273
+ "type": "core::integer::u256"
8274
+ }
8275
+ ],
8276
+ "outputs": [
8277
+ {
8278
+ "type": "core::integer::u256"
8279
+ }
8280
+ ],
8281
+ "state_mutability": "view"
8282
+ }
8283
+ ]
8284
+ },
8285
+ {
8286
+ "type": "constructor",
8287
+ "name": "constructor",
8288
+ "inputs": [
8289
+ {
8290
+ "name": "owner",
8291
+ "type": "core::starknet::contract_address::ContractAddress"
8292
+ }
8293
+ ]
8294
+ },
8295
+ {
8296
+ "type": "event",
8297
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Transfer",
8298
+ "kind": "struct",
8299
+ "members": [
8300
+ {
8301
+ "name": "from",
8302
+ "type": "core::starknet::contract_address::ContractAddress",
8303
+ "kind": "key"
8304
+ },
8305
+ {
8306
+ "name": "to",
8307
+ "type": "core::starknet::contract_address::ContractAddress",
8308
+ "kind": "key"
8309
+ },
8310
+ {
8311
+ "name": "token_id",
8312
+ "type": "core::integer::u256",
8313
+ "kind": "key"
8314
+ }
8315
+ ]
8316
+ },
8317
+ {
8318
+ "type": "event",
8319
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Approval",
8320
+ "kind": "struct",
8321
+ "members": [
8322
+ {
8323
+ "name": "owner",
8324
+ "type": "core::starknet::contract_address::ContractAddress",
8325
+ "kind": "key"
8326
+ },
8327
+ {
8328
+ "name": "approved",
8329
+ "type": "core::starknet::contract_address::ContractAddress",
8330
+ "kind": "key"
8331
+ },
8332
+ {
8333
+ "name": "token_id",
8334
+ "type": "core::integer::u256",
8335
+ "kind": "key"
8336
+ }
8337
+ ]
8338
+ },
8339
+ {
8340
+ "type": "event",
8341
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::ApprovalForAll",
8342
+ "kind": "struct",
8343
+ "members": [
8344
+ {
8345
+ "name": "owner",
8346
+ "type": "core::starknet::contract_address::ContractAddress",
8347
+ "kind": "key"
8348
+ },
8349
+ {
8350
+ "name": "operator",
8351
+ "type": "core::starknet::contract_address::ContractAddress",
8352
+ "kind": "key"
8353
+ },
8354
+ {
8355
+ "name": "approved",
8356
+ "type": "core::bool",
8357
+ "kind": "data"
8358
+ }
8359
+ ]
8360
+ },
8361
+ {
8362
+ "type": "event",
8363
+ "name": "openzeppelin_token::erc721::erc721::ERC721Component::Event",
8364
+ "kind": "enum",
8365
+ "variants": [
8366
+ {
8367
+ "name": "Transfer",
8368
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Transfer",
8369
+ "kind": "nested"
8370
+ },
8371
+ {
8372
+ "name": "Approval",
8373
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Approval",
8374
+ "kind": "nested"
8375
+ },
8376
+ {
8377
+ "name": "ApprovalForAll",
8378
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::ApprovalForAll",
8379
+ "kind": "nested"
8380
+ }
8381
+ ]
8382
+ },
8383
+ {
8384
+ "type": "event",
8385
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferred",
8386
+ "kind": "struct",
8387
+ "members": [
8388
+ {
8389
+ "name": "previous_owner",
8390
+ "type": "core::starknet::contract_address::ContractAddress",
8391
+ "kind": "key"
8392
+ },
8393
+ {
8394
+ "name": "new_owner",
8395
+ "type": "core::starknet::contract_address::ContractAddress",
8396
+ "kind": "key"
8397
+ }
8398
+ ]
8399
+ },
8400
+ {
8401
+ "type": "event",
8402
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferStarted",
8403
+ "kind": "struct",
8404
+ "members": [
8405
+ {
8406
+ "name": "previous_owner",
8407
+ "type": "core::starknet::contract_address::ContractAddress",
8408
+ "kind": "key"
8409
+ },
8410
+ {
8411
+ "name": "new_owner",
8412
+ "type": "core::starknet::contract_address::ContractAddress",
8413
+ "kind": "key"
8414
+ }
8415
+ ]
8416
+ },
8417
+ {
8418
+ "type": "event",
8419
+ "name": "openzeppelin_access::ownable::ownable::OwnableComponent::Event",
8420
+ "kind": "enum",
8421
+ "variants": [
8422
+ {
8423
+ "name": "OwnershipTransferred",
8424
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferred",
8425
+ "kind": "nested"
8426
+ },
8427
+ {
8428
+ "name": "OwnershipTransferStarted",
8429
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::OwnershipTransferStarted",
8430
+ "kind": "nested"
8431
+ }
8432
+ ]
8433
+ },
8434
+ {
8435
+ "type": "event",
8436
+ "name": "openzeppelin_introspection::src5::SRC5Component::Event",
8437
+ "kind": "enum",
8438
+ "variants": []
8439
+ },
8440
+ {
8441
+ "type": "event",
8442
+ "name": "openzeppelin_token::erc721::extensions::erc721_enumerable::erc721_enumerable::ERC721EnumerableComponent::Event",
8443
+ "kind": "enum",
8444
+ "variants": []
8445
+ },
8446
+ {
8447
+ "type": "event",
8448
+ "name": "mip::mip::MIP::CounterComponent::CounterIncremented",
8449
+ "kind": "struct",
8450
+ "members": [
8451
+ {
8452
+ "name": "value",
8453
+ "type": "core::integer::u256",
8454
+ "kind": "data"
8455
+ }
8456
+ ]
8457
+ },
8458
+ {
8459
+ "type": "event",
8460
+ "name": "mip::mip::MIP::CounterComponent::CounterDecremented",
8461
+ "kind": "struct",
8462
+ "members": [
8463
+ {
8464
+ "name": "value",
8465
+ "type": "core::integer::u256",
8466
+ "kind": "data"
8467
+ }
8468
+ ]
8469
+ },
8470
+ {
8471
+ "type": "event",
8472
+ "name": "mip::mip::MIP::CounterComponent::Event",
8473
+ "kind": "enum",
8474
+ "variants": [
8475
+ {
8476
+ "name": "CounterIncremented",
8477
+ "type": "mip::mip::MIP::CounterComponent::CounterIncremented",
8478
+ "kind": "nested"
8479
+ },
8480
+ {
8481
+ "name": "CounterDecremented",
8482
+ "type": "mip::mip::MIP::CounterComponent::CounterDecremented",
8483
+ "kind": "nested"
8484
+ }
8485
+ ]
8486
+ },
8487
+ {
8488
+ "type": "event",
8489
+ "name": "mip::mip::MIP::Event",
8490
+ "kind": "enum",
8491
+ "variants": [
8492
+ {
8493
+ "name": "ERC721Event",
8494
+ "type": "openzeppelin_token::erc721::erc721::ERC721Component::Event",
8495
+ "kind": "flat"
8496
+ },
8497
+ {
8498
+ "name": "OwnableEvent",
8499
+ "type": "openzeppelin_access::ownable::ownable::OwnableComponent::Event",
8500
+ "kind": "flat"
8501
+ },
8502
+ {
8503
+ "name": "SRC5Event",
8504
+ "type": "openzeppelin_introspection::src5::SRC5Component::Event",
8505
+ "kind": "flat"
8506
+ },
8507
+ {
8508
+ "name": "ERC721EnumerableEvent",
8509
+ "type": "openzeppelin_token::erc721::extensions::erc721_enumerable::erc721_enumerable::ERC721EnumerableComponent::Event",
8510
+ "kind": "flat"
8511
+ },
8512
+ {
8513
+ "name": "CounterEvent",
8514
+ "type": "mip::mip::MIP::CounterComponent::Event",
8515
+ "kind": "flat"
8516
+ }
8517
+ ]
8518
+ }
8519
+ ];
8520
+
4640
8521
  // src/constants.ts
4641
8522
  var SN = getCoordinates("STARKNET");
4642
8523
  var STARKNET_MARKETPLACE_721_CONTRACT = SN.marketplace721;
@@ -4658,6 +8539,12 @@ var STARKNET_POP_COLLECTION_CLASS_HASH = SN.popCollectionClassHash;
4658
8539
  var STARKNET_DROP_FACTORY_CONTRACT = SN.dropFactory;
4659
8540
  var STARKNET_DROP_COLLECTION_CLASS_HASH = SN.dropCollectionClassHash;
4660
8541
  var STARKNET_NFTCOMMENTS_CONTRACT = SN.nftComments;
8542
+ var STARKNET_IP_TICKETS_FACTORY_CONTRACT = SN.ipTicketsFactory;
8543
+ var STARKNET_IP_TICKET_COLLECTION_CLASS_HASH = SN.ipTicketCollectionClassHash;
8544
+ var STARKNET_IP_CLUB_REGISTRY_CONTRACT = SN.ipClubRegistry;
8545
+ var STARKNET_IP_CLUB_NFT_CLASS_HASH = SN.ipClubNftClassHash;
8546
+ var STARKNET_IP_SPONSORSHIP_CONTRACT = SN.ipSponsorship;
8547
+ var STARKNET_IP_SPONSORSHIP_LICENSE_CONTRACT = SN.ipSponsorshipLicense;
4661
8548
  var STARKNET_CREATOR_COIN_FACTORY_CONTRACT = SN.creatorCoinFactory;
4662
8549
  var STARKNET_CREATOR_COIN_EKUBO_LAUNCHER = SN.creatorCoinEkuboLauncher;
4663
8550
  var STARKNET_CREATOR_COIN_CLASS_HASH = SN.creatorCoinClassHash;
@@ -6649,6 +10536,240 @@ var CreatorCoinService = class {
6649
10536
  return getCreatorCoinPrice(coinAddress, new starknet.RpcProvider({ nodeUrl: this.config.rpcUrl }));
6650
10537
  }
6651
10538
  };
10539
+ var TicketService = class {
10540
+ constructor(config) {
10541
+ this.factoryAddress = getCoordinates(config.chain).ipTicketsFactory;
10542
+ }
10543
+ _collection(address, account) {
10544
+ return new starknet.Contract(IPTicketCollectionABI, normalizeAddress("STARKNET", address), account);
10545
+ }
10546
+ /** Deploys a new IPTicketCollection via the factory. Caller becomes its owner. */
10547
+ async deployTicketCollection(account, params) {
10548
+ const factoryAddress = params.factoryAddress ?? this.factoryAddress;
10549
+ if (!factoryAddress) {
10550
+ throw new Error("IP-Tickets factory address not configured for this chain");
10551
+ }
10552
+ const factory = new starknet.Contract(IPTicketCollectionFactoryABI, factoryAddress, account);
10553
+ const call = factory.populate("deploy_ticket_collection", [params.name, params.symbol]);
10554
+ const res = await account.execute([call]);
10555
+ return { txHash: res.transaction_hash };
10556
+ }
10557
+ /** Owner-only. Creates a new ticket collection (event/tier) inside the caller's deployed IPTicketCollection. */
10558
+ async createTicketCollection(account, params) {
10559
+ const paymentToken = params.paymentToken ? new starknet.CairoOption(starknet.CairoOptionVariant.Some, params.paymentToken) : new starknet.CairoOption(starknet.CairoOptionVariant.None);
10560
+ const call = this._collection(params.collection, account).populate("create_ticket_collection", [
10561
+ starknet.cairo.uint256(params.price),
10562
+ starknet.cairo.uint256(params.maxSupply),
10563
+ params.expiration,
10564
+ params.royaltyBps,
10565
+ paymentToken,
10566
+ params.metadataUri
10567
+ ]);
10568
+ const res = await account.execute([call]);
10569
+ return { txHash: res.transaction_hash };
10570
+ }
10571
+ /** Owner-only. Gates minting only — existing tickets keep access/transfer/redeem. */
10572
+ async setCollectionActive(account, params) {
10573
+ const call = this._collection(params.collection, account).populate("set_collection_active", [
10574
+ starknet.cairo.uint256(params.collectionId),
10575
+ params.active
10576
+ ]);
10577
+ const res = await account.execute([call]);
10578
+ return { txHash: res.transaction_hash };
10579
+ }
10580
+ /** Mints a ticket. Prepends an ERC-20 approve when the collection is paid. */
10581
+ async mintTicket(account, params) {
10582
+ const calls = [];
10583
+ if (params.paymentToken && params.price && BigInt(params.price) > 0n) {
10584
+ const amount = starknet.cairo.uint256(params.price);
10585
+ calls.push({
10586
+ contractAddress: params.paymentToken,
10587
+ entrypoint: "approve",
10588
+ calldata: [normalizeAddress("STARKNET", params.collection), amount.low.toString(), amount.high.toString()]
10589
+ });
10590
+ }
10591
+ calls.push(this._collection(params.collection, account).populate("mint_ticket", [starknet.cairo.uint256(params.collectionId)]));
10592
+ const res = await account.execute(calls);
10593
+ return { txHash: res.transaction_hash };
10594
+ }
10595
+ /** Only the current token owner may redeem. */
10596
+ async redeemTicket(account, params) {
10597
+ const call = this._collection(params.collection, account).populate("redeem_ticket", [starknet.cairo.uint256(params.tokenId)]);
10598
+ const res = await account.execute([call]);
10599
+ return { txHash: res.transaction_hash };
10600
+ }
10601
+ };
10602
+ var ClubService = class {
10603
+ constructor(config) {
10604
+ this.registryAddress = getCoordinates(config.chain).ipClubRegistry;
10605
+ }
10606
+ _registry(account, registryAddress) {
10607
+ const address = registryAddress ?? this.registryAddress;
10608
+ if (!address) {
10609
+ throw new Error("IP-Club registry address not configured for this chain");
10610
+ }
10611
+ return new starknet.Contract(IPClubABI, normalizeAddress("STARKNET", address), account);
10612
+ }
10613
+ /** Permissionless — anyone may create a club. The registry deploys its own membership NFT internally. */
10614
+ async createClub(account, params) {
10615
+ const maxMembers = params.maxMembers != null ? new starknet.CairoOption(starknet.CairoOptionVariant.Some, params.maxMembers) : new starknet.CairoOption(starknet.CairoOptionVariant.None);
10616
+ const entryFee = params.entryFee != null ? new starknet.CairoOption(starknet.CairoOptionVariant.Some, starknet.cairo.uint256(params.entryFee)) : new starknet.CairoOption(starknet.CairoOptionVariant.None);
10617
+ const paymentToken = params.paymentToken ? new starknet.CairoOption(starknet.CairoOptionVariant.Some, params.paymentToken) : new starknet.CairoOption(starknet.CairoOptionVariant.None);
10618
+ const call = this._registry(account, params.registryAddress).populate("create_club", [
10619
+ params.name,
10620
+ params.symbol,
10621
+ params.metadataUri,
10622
+ maxMembers,
10623
+ entryFee,
10624
+ paymentToken
10625
+ ]);
10626
+ const res = await account.execute([call]);
10627
+ return { txHash: res.transaction_hash };
10628
+ }
10629
+ /** Reversible — gates new joins only; existing members are never affected. */
10630
+ async setClubOpen(account, params) {
10631
+ const call = this._registry(account, params.registryAddress).populate("set_club_open", [
10632
+ starknet.cairo.uint256(params.clubId),
10633
+ params.open
10634
+ ]);
10635
+ const res = await account.execute([call]);
10636
+ return { txHash: res.transaction_hash };
10637
+ }
10638
+ /** Prepends an ERC-20 approve when the club has an entry fee. */
10639
+ async joinClub(account, params) {
10640
+ const registryAddress = params.registryAddress ?? this.registryAddress;
10641
+ if (!registryAddress) {
10642
+ throw new Error("IP-Club registry address not configured for this chain");
10643
+ }
10644
+ const calls = [];
10645
+ if (params.paymentToken && params.entryFee && BigInt(params.entryFee) > 0n) {
10646
+ const amount = starknet.cairo.uint256(params.entryFee);
10647
+ calls.push({
10648
+ contractAddress: params.paymentToken,
10649
+ entrypoint: "approve",
10650
+ calldata: [normalizeAddress("STARKNET", registryAddress), amount.low.toString(), amount.high.toString()]
10651
+ });
10652
+ }
10653
+ calls.push(this._registry(account, registryAddress).populate("join_club", [starknet.cairo.uint256(params.clubId)]));
10654
+ const res = await account.execute(calls);
10655
+ return { txHash: res.transaction_hash };
10656
+ }
10657
+ /** Always allowed, open or closed. No fee refund. Burns the caller's membership NFT. */
10658
+ async leaveClub(account, params) {
10659
+ const call = this._registry(account, params.registryAddress).populate("leave_club", [
10660
+ starknet.cairo.uint256(params.clubId),
10661
+ starknet.cairo.uint256(params.tokenId)
10662
+ ]);
10663
+ const res = await account.execute([call]);
10664
+ return { txHash: res.transaction_hash };
10665
+ }
10666
+ };
10667
+ var SponsorshipService = class {
10668
+ constructor(config) {
10669
+ this.sponsorshipAddress = getCoordinates(config.chain).ipSponsorship;
10670
+ this.licenseReceiptAddress = getCoordinates(config.chain).ipSponsorshipLicense;
10671
+ }
10672
+ _sponsorship(account, address) {
10673
+ const resolved = address ?? this.sponsorshipAddress;
10674
+ if (!resolved) {
10675
+ throw new Error("IP-Sponsorship address not configured for this chain");
10676
+ }
10677
+ return new starknet.Contract(IPSponsorshipABI, normalizeAddress("STARKNET", resolved), account);
10678
+ }
10679
+ /** The offer author must currently own (nftContract, tokenId) — enforced on-chain at create and accept. */
10680
+ async createOffer(account, params) {
10681
+ const specificSponsor = params.specificSponsor ? new starknet.CairoOption(starknet.CairoOptionVariant.Some, params.specificSponsor) : new starknet.CairoOption(starknet.CairoOptionVariant.None);
10682
+ const call = this._sponsorship(account, params.sponsorshipAddress).populate("create_offer", [
10683
+ params.nftContract,
10684
+ starknet.cairo.uint256(params.tokenId),
10685
+ starknet.cairo.uint256(params.minAmount),
10686
+ params.duration,
10687
+ params.paymentToken,
10688
+ params.licenseTermsUri,
10689
+ params.transferable,
10690
+ specificSponsor
10691
+ ]);
10692
+ const res = await account.execute([call]);
10693
+ return { txHash: res.transaction_hash };
10694
+ }
10695
+ /** Reversible — gates new bids/acceptance only. */
10696
+ async setOfferOpen(account, params) {
10697
+ const call = this._sponsorship(account, params.sponsorshipAddress).populate("set_offer_open", [
10698
+ starknet.cairo.uint256(params.offerId),
10699
+ params.open
10700
+ ]);
10701
+ const res = await account.execute([call]);
10702
+ return { txHash: res.transaction_hash };
10703
+ }
10704
+ /** A bid is a signal plus an open ERC-20 allowance — no tokens move until accepted. Prepends the approve. */
10705
+ async placeBid(account, params) {
10706
+ const sponsorshipAddress = params.sponsorshipAddress ?? this.sponsorshipAddress;
10707
+ if (!sponsorshipAddress) {
10708
+ throw new Error("IP-Sponsorship address not configured for this chain");
10709
+ }
10710
+ const amount = starknet.cairo.uint256(params.amount);
10711
+ const approveCall = {
10712
+ contractAddress: params.paymentToken,
10713
+ entrypoint: "approve",
10714
+ calldata: [normalizeAddress("STARKNET", sponsorshipAddress), amount.low.toString(), amount.high.toString()]
10715
+ };
10716
+ const bidCall = this._sponsorship(account, sponsorshipAddress).populate("place_bid", [
10717
+ starknet.cairo.uint256(params.offerId),
10718
+ amount
10719
+ ]);
10720
+ const res = await account.execute([approveCall, bidCall]);
10721
+ return { txHash: res.transaction_hash };
10722
+ }
10723
+ async retractBid(account, params) {
10724
+ const call = this._sponsorship(account, params.sponsorshipAddress).populate("retract_bid", [
10725
+ starknet.cairo.uint256(params.offerId)
10726
+ ]);
10727
+ const res = await account.execute([call]);
10728
+ return { txHash: res.transaction_hash };
10729
+ }
10730
+ /**
10731
+ * Author-only. Settles the sponsor's payment (allowance pull, no escrow) and
10732
+ * mints a non-authoritative receipt NFT to the sponsor via the dedicated
10733
+ * sponsorship-license IPGenesis instance — never the genesis-mint instance.
10734
+ * `is_license_valid()` on IPSponsorship remains the sole authority for
10735
+ * gating/perks; the receipt is a wallet-visible courtesy only.
10736
+ */
10737
+ async acceptBid(account, params) {
10738
+ const receiptAddress = params.licenseReceiptAddress ?? this.licenseReceiptAddress;
10739
+ if (!receiptAddress) {
10740
+ throw new Error("IP-Sponsorship-License receipt address not configured for this chain");
10741
+ }
10742
+ const acceptCall = this._sponsorship(account, params.sponsorshipAddress).populate("accept_bid", [
10743
+ starknet.cairo.uint256(params.offerId),
10744
+ params.sponsor
10745
+ ]);
10746
+ const receipt = new starknet.Contract(IPGenesisABI, normalizeAddress("STARKNET", receiptAddress), account);
10747
+ const mintCall = receipt.populate("mint_item", [params.sponsor, params.licenseTermsUri]);
10748
+ const res = await account.execute([acceptCall, mintCall]);
10749
+ return { txHash: res.transaction_hash };
10750
+ }
10751
+ /**
10752
+ * Best-effort — bundles a receipt-NFT transfer alongside `transfer_license`
10753
+ * when both `licenseReceiptAddress` and `receiptTokenId` are supplied.
10754
+ * IPSponsorship's own license ownership stays authoritative regardless of
10755
+ * whether the receipt NFT is kept in sync.
10756
+ */
10757
+ async transferLicense(account, params) {
10758
+ const calls = [
10759
+ this._sponsorship(account, params.sponsorshipAddress).populate("transfer_license", [
10760
+ starknet.cairo.uint256(params.licenseId),
10761
+ params.to
10762
+ ])
10763
+ ];
10764
+ const receiptAddress = params.licenseReceiptAddress ?? this.licenseReceiptAddress;
10765
+ if (receiptAddress && params.receiptTokenId != null) {
10766
+ const receipt = new starknet.Contract(IPGenesisABI, normalizeAddress("STARKNET", receiptAddress), account);
10767
+ calls.push(receipt.populate("transfer_from", [account.address, params.to, starknet.cairo.uint256(params.receiptTokenId)]));
10768
+ }
10769
+ const res = await account.execute(calls);
10770
+ return { txHash: res.transaction_hash };
10771
+ }
10772
+ };
6652
10773
 
6653
10774
  // src/client.ts
6654
10775
  var MedialaneClient = class {
@@ -6660,7 +10781,10 @@ var MedialaneClient = class {
6660
10781
  pop: new PopService(this.config),
6661
10782
  drop: new DropService(this.config),
6662
10783
  erc1155Collection: new ERC1155CollectionService(this.config),
6663
- creatorCoin: new CreatorCoinService(this.config)
10784
+ creatorCoin: new CreatorCoinService(this.config),
10785
+ ticket: new TicketService(this.config),
10786
+ club: new ClubService(this.config),
10787
+ sponsorship: new SponsorshipService(this.config)
6664
10788
  };
6665
10789
  if (!this.config.backendUrl) {
6666
10790
  const sentinel = new ApiClient("https://medialane-sdk-no-backend.invalid", this.config.apiKey);
@@ -6825,6 +10949,95 @@ function parseAdminHeaders(get) {
6825
10949
  }
6826
10950
  }
6827
10951
 
10952
+ // src/siws/client.ts
10953
+ var STORAGE_PREFIX = "ml_siws_";
10954
+ function decodeBase64url(str) {
10955
+ const base64 = str.replace(/-/g, "+").replace(/_/g, "/");
10956
+ const padding = "=".repeat((4 - base64.length % 4) % 4);
10957
+ return atob(base64 + padding);
10958
+ }
10959
+ function readTokenExpiry(token) {
10960
+ try {
10961
+ if (!token.startsWith("siws_")) return null;
10962
+ const inner = token.slice(5);
10963
+ const dot = inner.lastIndexOf(".");
10964
+ if (dot === -1) return null;
10965
+ const data = JSON.parse(decodeBase64url(inner.slice(0, dot)));
10966
+ return typeof data.exp === "number" ? data.exp : null;
10967
+ } catch {
10968
+ return null;
10969
+ }
10970
+ }
10971
+ function getSiwsStorageKey(address) {
10972
+ return `${STORAGE_PREFIX}${address.toLowerCase()}`;
10973
+ }
10974
+ function isSiwsTokenValid(token) {
10975
+ if (!token?.startsWith("siws_")) return false;
10976
+ const expiry = readTokenExpiry(token);
10977
+ return Boolean(expiry && expiry > Math.floor(Date.now() / 1e3));
10978
+ }
10979
+ function getStoredSiwsToken(address) {
10980
+ if (typeof window === "undefined") return null;
10981
+ const key = getSiwsStorageKey(address);
10982
+ const token = localStorage.getItem(key);
10983
+ if (isSiwsTokenValid(token)) return token;
10984
+ localStorage.removeItem(key);
10985
+ return null;
10986
+ }
10987
+ function storeSiwsToken(address, token) {
10988
+ if (typeof window === "undefined") return;
10989
+ localStorage.setItem(getSiwsStorageKey(address), token);
10990
+ }
10991
+ function normalizeSiwsSignature(signature) {
10992
+ if (Array.isArray(signature)) {
10993
+ return signature.map(String);
10994
+ }
10995
+ if (signature && typeof signature === "object") {
10996
+ const { r, s } = signature;
10997
+ if (r !== void 0 && s !== void 0) {
10998
+ return [String(r), String(s)];
10999
+ }
11000
+ }
11001
+ return [String(signature)];
11002
+ }
11003
+ async function requestSiwsToken({
11004
+ backendUrl,
11005
+ walletAddress,
11006
+ signer
11007
+ }) {
11008
+ const base = backendUrl.replace(/\/$/, "");
11009
+ const nonceRes = await fetch(`${base}/v1/auth/siws/nonce`, {
11010
+ method: "POST",
11011
+ headers: { "Content-Type": "application/json" },
11012
+ body: JSON.stringify({ walletAddress })
11013
+ });
11014
+ if (!nonceRes.ok) {
11015
+ throw new Error("Failed to prepare wallet sign-in");
11016
+ }
11017
+ const { nonce, typedData } = await nonceRes.json();
11018
+ const signature = normalizeSiwsSignature(await signer.signMessage(typedData));
11019
+ const verifyRes = await fetch(`${base}/v1/auth/siws/verify`, {
11020
+ method: "POST",
11021
+ headers: { "Content-Type": "application/json" },
11022
+ body: JSON.stringify({ walletAddress, nonce, signature })
11023
+ });
11024
+ if (!verifyRes.ok) {
11025
+ let backendMessage;
11026
+ try {
11027
+ const body = await verifyRes.json();
11028
+ if (body?.message) backendMessage = body.message;
11029
+ } catch {
11030
+ }
11031
+ throw new Error(backendMessage ?? "Wallet sign-in failed");
11032
+ }
11033
+ const { token } = await verifyRes.json();
11034
+ if (!isSiwsTokenValid(token)) {
11035
+ throw new Error("Wallet sign-in returned an invalid token");
11036
+ }
11037
+ storeSiwsToken(walletAddress, token);
11038
+ return token;
11039
+ }
11040
+
6828
11041
  // src/types/api.ts
6829
11042
  var OPEN_LICENSES = ["CC0", "CC BY", "CC BY-SA", "CC BY-NC"];
6830
11043
 
@@ -6966,6 +11179,52 @@ var SERVICES = {
6966
11179
  ],
6967
11180
  metadataSchema: { licenseDefault: "CC BY-SA" }
6968
11181
  },
11182
+ "ip-tickets": {
11183
+ id: "ip-tickets",
11184
+ displayName: "IP Tickets",
11185
+ description: "Sell verifiable, redeemable tickets for events and experiences.",
11186
+ standard: "ERC721",
11187
+ provenance: "MEDIALANE",
11188
+ uiVariant: "ticket",
11189
+ capabilities: ["mint", "redeem", "transfer"],
11190
+ events: [
11191
+ { name: "CollectionDeployed", emittedBy: "factory" }
11192
+ ],
11193
+ metadataSchema: { licenseDefault: "CC BY-SA" }
11194
+ },
11195
+ "ip-club": {
11196
+ id: "ip-club",
11197
+ displayName: "IP Club",
11198
+ description: "Membership clubs with an on-chain NFT membership card.",
11199
+ standard: "ERC721",
11200
+ provenance: "MEDIALANE",
11201
+ uiVariant: "club",
11202
+ capabilities: ["subscribe", "transfer"],
11203
+ events: [
11204
+ { name: "NewClubCreated", emittedBy: "factory" }
11205
+ ],
11206
+ metadataSchema: { licenseDefault: "CC BY-SA" }
11207
+ },
11208
+ "ip-sponsorship": {
11209
+ id: "ip-sponsorship",
11210
+ displayName: "IP Sponsorship",
11211
+ description: "Sponsorship offers and licenses anchored to an existing Medialane asset.",
11212
+ standard: "ERC721",
11213
+ provenance: "MEDIALANE",
11214
+ uiVariant: "standard",
11215
+ capabilities: ["sponsor"],
11216
+ metadataSchema: { licenseDefault: "CC BY-SA" }
11217
+ },
11218
+ "ip-sponsorship-license": {
11219
+ id: "ip-sponsorship-license",
11220
+ displayName: "Sponsorship License Receipt",
11221
+ description: "Non-authoritative receipt NFT minted to a sponsor when a sponsorship bid is accepted.",
11222
+ standard: "ERC721",
11223
+ provenance: "MEDIALANE",
11224
+ uiVariant: "standard",
11225
+ capabilities: ["transfer"],
11226
+ metadataSchema: { licenseDefault: "CC BY-SA" }
11227
+ },
6969
11228
  "creator-coin": {
6970
11229
  id: "creator-coin",
6971
11230
  displayName: "Creator Coin",
@@ -7081,6 +11340,7 @@ exports.ApiClient = ApiClient;
7081
11340
  exports.CHAINS = CHAINS;
7082
11341
  exports.COIN_MAX_SUPPLY = MAX_SUPPLY;
7083
11342
  exports.COIN_MIN_SUPPLY = MIN_SUPPLY;
11343
+ exports.ClubService = ClubService;
7084
11344
  exports.CreatorCoinFactoryABI = CreatorCoinFactoryABI;
7085
11345
  exports.CreatorCoinService = CreatorCoinService;
7086
11346
  exports.DEFAULT_CHAIN = DEFAULT_CHAIN;
@@ -7090,11 +11350,17 @@ exports.DropFactoryABI = DropFactoryABI;
7090
11350
  exports.DropService = DropService;
7091
11351
  exports.ERC1155CollectionService = ERC1155CollectionService;
7092
11352
  exports.FeeConfigSchema = FeeConfigSchema;
11353
+ exports.IPClubABI = IPClubABI;
11354
+ exports.IPClubNFTABI = IPClubNFTABI;
7093
11355
  exports.IPCollection1155ABI = IPCollection1155ABI;
7094
11356
  exports.IPCollection1155FactoryABI = IPCollection1155FactoryABI;
7095
11357
  exports.IPCollectionABI = IPCollectionABI;
11358
+ exports.IPGenesisABI = IPGenesisABI;
7096
11359
  exports.IPMarketplaceABI = IPMarketplaceABI;
7097
11360
  exports.IPNftABI = IPNftABI;
11361
+ exports.IPSponsorshipABI = IPSponsorshipABI;
11362
+ exports.IPTicketCollectionABI = IPTicketCollectionABI;
11363
+ exports.IPTicketCollectionFactoryABI = IPTicketCollectionFactoryABI;
7098
11364
  exports.LAUNCH_PRICE_QUOTE_PER_COIN = LAUNCH_PRICE_QUOTE_PER_COIN;
7099
11365
  exports.MarketplaceModule = MarketplaceModule;
7100
11366
  exports.Medialane1155ABI = Medialane1155ABI;
@@ -7123,6 +11389,12 @@ exports.STARKNET_DROP_FACTORY_CONTRACT = STARKNET_DROP_FACTORY_CONTRACT;
7123
11389
  exports.STARKNET_EKUBO_CORE = STARKNET_EKUBO_CORE;
7124
11390
  exports.STARKNET_IPCOLLECTION_CLASS_HASH = STARKNET_IPCOLLECTION_CLASS_HASH;
7125
11391
  exports.STARKNET_IPNFT_CLASS_HASH = STARKNET_IPNFT_CLASS_HASH;
11392
+ exports.STARKNET_IP_CLUB_NFT_CLASS_HASH = STARKNET_IP_CLUB_NFT_CLASS_HASH;
11393
+ exports.STARKNET_IP_CLUB_REGISTRY_CONTRACT = STARKNET_IP_CLUB_REGISTRY_CONTRACT;
11394
+ exports.STARKNET_IP_SPONSORSHIP_CONTRACT = STARKNET_IP_SPONSORSHIP_CONTRACT;
11395
+ exports.STARKNET_IP_SPONSORSHIP_LICENSE_CONTRACT = STARKNET_IP_SPONSORSHIP_LICENSE_CONTRACT;
11396
+ exports.STARKNET_IP_TICKETS_FACTORY_CONTRACT = STARKNET_IP_TICKETS_FACTORY_CONTRACT;
11397
+ exports.STARKNET_IP_TICKET_COLLECTION_CLASS_HASH = STARKNET_IP_TICKET_COLLECTION_CLASS_HASH;
7126
11398
  exports.STARKNET_MARKETPLACE_1155_CLASS_HASH = STARKNET_MARKETPLACE_1155_CLASS_HASH;
7127
11399
  exports.STARKNET_MARKETPLACE_1155_CONTRACT = STARKNET_MARKETPLACE_1155_CONTRACT;
7128
11400
  exports.STARKNET_MARKETPLACE_1155_START_BLOCK = STARKNET_MARKETPLACE_1155_START_BLOCK;
@@ -7133,6 +11405,8 @@ exports.STARKNET_NFTCOMMENTS_CONTRACT = STARKNET_NFTCOMMENTS_CONTRACT;
7133
11405
  exports.STARKNET_POP_COLLECTION_CLASS_HASH = STARKNET_POP_COLLECTION_CLASS_HASH;
7134
11406
  exports.STARKNET_POP_FACTORY_CONTRACT = STARKNET_POP_FACTORY_CONTRACT;
7135
11407
  exports.SUPPORTED_TOKENS = SUPPORTED_TOKENS;
11408
+ exports.SponsorshipService = SponsorshipService;
11409
+ exports.TicketService = TicketService;
7136
11410
  exports.VALIDATED_EKUBO_PARAMS = VALIDATED_EKUBO_PARAMS;
7137
11411
  exports.adminRequestDigest = adminRequestDigest;
7138
11412
  exports.build1155CancellationTypedData = build1155CancellationTypedData;
@@ -7156,22 +11430,28 @@ exports.getCreatorCoinPrice = getCreatorCoinPrice;
7156
11430
  exports.getListableTokens = getListableTokens;
7157
11431
  exports.getService = getService;
7158
11432
  exports.getServicesByCapability = getServicesByCapability;
11433
+ exports.getSiwsStorageKey = getSiwsStorageKey;
11434
+ exports.getStoredSiwsToken = getStoredSiwsToken;
7159
11435
  exports.getTokenByAddress = getTokenByAddress;
7160
11436
  exports.getTokenBySymbol = getTokenBySymbol;
7161
11437
  exports.isServiceId = isServiceId;
11438
+ exports.isSiwsTokenValid = isSiwsTokenValid;
7162
11439
  exports.isTransientRpcError = isTransientRpcError;
7163
11440
  exports.listServices = listServices;
7164
11441
  exports.normalizeAddress = normalizeAddress;
7165
11442
  exports.normalizeHash = normalizeHash;
11443
+ exports.normalizeSiwsSignature = normalizeSiwsSignature;
7166
11444
  exports.parseAdminHeaders = parseAdminHeaders;
7167
11445
  exports.parseAmount = parseAmount;
7168
11446
  exports.parseCreatorCoinCreated = parseCreatorCoinCreated;
7169
11447
  exports.randomNonce = randomNonce;
11448
+ exports.requestSiwsToken = requestSiwsToken;
7170
11449
  exports.resolveConfig = resolveConfig;
7171
11450
  exports.resolveFeeConfig = resolveFeeConfig;
7172
11451
  exports.sessionKeyHashOf = sessionKeyHashOf;
7173
11452
  exports.shortenAddress = shortenAddress;
7174
11453
  exports.signAdminRequest = signAdminRequest;
11454
+ exports.storeSiwsToken = storeSiwsToken;
7175
11455
  exports.stringifyBigInts = stringifyBigInts;
7176
11456
  exports.teamCoinsRaw = teamCoinsRaw;
7177
11457
  exports.u256ToBigInt = u256ToBigInt;