anthol_backend.did
1 type AttrKeys = record { 2 attr2_key : nat8; 3 attr4_key : nat8; 4 attr1_key : nat8; 5 attr3_key : nat8; 6 }; 7 type Currency = variant { 8 BTC; 9 CNY; 10 ETH; 11 EUR; 12 GBP; 13 ICP; 14 JPY; 15 USD; 16 FLOS; 17 USDC; 18 USDT; 19 }; 20 type ImageData = record { url : text; description : text }; 21 type ItemCoreDataArgs = record { item : ItemCoreKeys; currency : Currency }; 22 type ItemCoreDataResult = record { 23 name : text; 24 tags : vec Tag; 25 stock : nat32; 26 store_name : text; 27 image : ImageData; 28 price : float64; 29 store_id : nat; 30 }; 31 type ItemCoreKeys = record { attr_keys : AttrKeys; item_id : nat }; 32 type ItemPageArgs = record { 33 market_id : opt nat; 34 attr_keys : AttrKeys; 35 currency : Currency; 36 item_id : nat; 37 }; 38 type ItemPageResult = record { 39 image_vec : vec ImageData; 40 name : text; 41 tags : vec Tag; 42 market_name : opt text; 43 specs : opt vec SpecResultUpperCategory; 44 stock : nat32; 45 store_name : text; 46 price : float64; 47 store_id : nat; 48 descriptions : vec text; 49 }; 50 type MarketDataForHomeFirstLoadArgs = record { 51 market_ids : vec nat; 52 currency : Currency; 53 }; 54 type MarketDataForHomeFirstLoadResult = record { 55 name : text; 56 items : vec opt ItemCoreDataResult; 57 }; 58 type SpecResultLowerCategory = record { 59 value : vec text; 60 lower_category_name : text; 61 }; 62 type SpecResultUpperCategory = record { 63 upper_category_name : text; 64 lower_category_vec : vec SpecResultLowerCategory; 65 }; 66 type Tag = record { id : nat; name : text }; 67 service : { 68 get_item_core_data_vec : (vec ItemCoreDataArgs) -> ( 69 vec opt ItemCoreDataResult, 70 ) query; 71 get_item_page_info : (ItemPageArgs) -> (opt ItemPageResult) query; 72 get_markets_for_home_first_load : (MarketDataForHomeFirstLoadArgs) -> ( 73 vec MarketDataForHomeFirstLoadResult, 74 ) query; 75 get_trusted_origins : () -> (vec text); 76 test_init : () -> (); 77 whoami : () -> (principal) query; 78 }