|
| 1 | +type BucketInfo = record { |
| 2 | + status : int8; |
| 3 | + total_chunks : nat64; |
| 4 | + trusted_eddsa_pub_keys : vec blob; |
| 5 | + managers : vec principal; |
| 6 | + name : text; |
| 7 | + max_custom_data_size : nat16; |
| 8 | + auditors : vec principal; |
| 9 | + total_files : nat64; |
| 10 | + max_children : nat16; |
| 11 | + enable_hash_index : bool; |
| 12 | + max_file_size : nat64; |
| 13 | + folder_id : nat32; |
| 14 | + visibility : nat8; |
| 15 | + max_folder_depth : nat8; |
| 16 | + trusted_ecdsa_pub_keys : vec blob; |
| 17 | + total_folders : nat64; |
| 18 | + file_id : nat32; |
| 19 | +}; |
| 20 | +type CanisterArgs = variant { Upgrade : UpgradeArgs; Init : InitArgs }; |
| 21 | +type CanisterStatusResponse = record { |
| 22 | + status : CanisterStatusType; |
| 23 | + memory_size : nat; |
| 24 | + cycles : nat; |
| 25 | + settings : DefiniteCanisterSettings; |
| 26 | + query_stats : QueryStats; |
| 27 | + idle_cycles_burned_per_day : nat; |
| 28 | + module_hash : opt blob; |
| 29 | + reserved_cycles : nat; |
| 30 | +}; |
| 31 | +type CanisterStatusType = variant { stopped; stopping; running }; |
| 32 | +type CreateFileInput = record { |
| 33 | + dek : opt blob; |
| 34 | + status : opt int8; |
| 35 | + content : opt blob; |
| 36 | + custom : opt vec record { text; MetadataValue }; |
| 37 | + hash : opt blob; |
| 38 | + name : text; |
| 39 | + size : opt nat64; |
| 40 | + content_type : text; |
| 41 | + parent : nat32; |
| 42 | +}; |
| 43 | +type CreateFileOutput = record { id : nat32; created_at : nat64 }; |
| 44 | +type CreateFolderInput = record { name : text; parent : nat32 }; |
| 45 | +type DefiniteCanisterSettings = record { |
| 46 | + freezing_threshold : nat; |
| 47 | + controllers : vec principal; |
| 48 | + reserved_cycles_limit : nat; |
| 49 | + log_visibility : LogVisibility; |
| 50 | + wasm_memory_limit : nat; |
| 51 | + memory_allocation : nat; |
| 52 | + compute_allocation : nat; |
| 53 | +}; |
| 54 | +type FileInfo = record { |
| 55 | + ex : opt vec record { text; MetadataValue }; |
| 56 | + id : nat32; |
| 57 | + dek : opt blob; |
| 58 | + status : int8; |
| 59 | + updated_at : nat64; |
| 60 | + custom : opt vec record { text; MetadataValue }; |
| 61 | + hash : opt blob; |
| 62 | + name : text; |
| 63 | + size : nat64; |
| 64 | + content_type : text; |
| 65 | + created_at : nat64; |
| 66 | + filled : nat64; |
| 67 | + chunks : nat32; |
| 68 | + parent : nat32; |
| 69 | +}; |
| 70 | +type FolderInfo = record { |
| 71 | + id : nat32; |
| 72 | + files : vec nat32; |
| 73 | + status : int8; |
| 74 | + updated_at : nat64; |
| 75 | + name : text; |
| 76 | + folders : vec nat32; |
| 77 | + created_at : nat64; |
| 78 | + parent : nat32; |
| 79 | +}; |
| 80 | +type FolderName = record { id : nat32; name : text }; |
| 81 | +type InitArgs = record { |
| 82 | + name : text; |
| 83 | + max_custom_data_size : nat16; |
| 84 | + max_children : nat16; |
| 85 | + enable_hash_index : bool; |
| 86 | + max_file_size : nat64; |
| 87 | + visibility : nat8; |
| 88 | + max_folder_depth : nat8; |
| 89 | + file_id : nat32; |
| 90 | +}; |
| 91 | +type LogVisibility = variant { controllers; public }; |
| 92 | +type MetadataValue = variant { Int : int; Nat : nat; Blob : blob; Text : text }; |
| 93 | +type MoveInput = record { id : nat32; to : nat32; from : nat32 }; |
| 94 | +type QueryStats = record { |
| 95 | + response_payload_bytes_total : nat; |
| 96 | + num_instructions_total : nat; |
| 97 | + num_calls_total : nat; |
| 98 | + request_payload_bytes_total : nat; |
| 99 | +}; |
| 100 | +type Result = variant { Ok; Err : text }; |
| 101 | +type Result_1 = variant { Ok : vec nat32; Err : text }; |
| 102 | +type Result_10 = variant { Ok : vec FileInfo; Err : text }; |
| 103 | +type Result_11 = variant { Ok : vec FolderInfo; Err : text }; |
| 104 | +type Result_12 = variant { Ok : UpdateFileOutput; Err : text }; |
| 105 | +type Result_13 = variant { Ok : UpdateFileChunkOutput; Err : text }; |
| 106 | +type Result_14 = variant { Ok : text; Err : text }; |
| 107 | +type Result_2 = variant { Ok : CreateFileOutput; Err : text }; |
| 108 | +type Result_3 = variant { Ok : bool; Err : text }; |
| 109 | +type Result_4 = variant { Ok : BucketInfo; Err : text }; |
| 110 | +type Result_5 = variant { Ok : CanisterStatusResponse; Err : text }; |
| 111 | +type Result_6 = variant { Ok : vec FolderName; Err : text }; |
| 112 | +type Result_7 = variant { Ok : vec record { nat32; blob }; Err : text }; |
| 113 | +type Result_8 = variant { Ok : FileInfo; Err : text }; |
| 114 | +type Result_9 = variant { Ok : FolderInfo; Err : text }; |
| 115 | +type UpdateBucketInput = record { |
| 116 | + status : opt int8; |
| 117 | + trusted_eddsa_pub_keys : opt vec blob; |
| 118 | + name : opt text; |
| 119 | + max_custom_data_size : opt nat16; |
| 120 | + max_children : opt nat16; |
| 121 | + enable_hash_index : opt bool; |
| 122 | + max_file_size : opt nat64; |
| 123 | + visibility : opt nat8; |
| 124 | + max_folder_depth : opt nat8; |
| 125 | + trusted_ecdsa_pub_keys : opt vec blob; |
| 126 | +}; |
| 127 | +type UpdateFileChunkInput = record { |
| 128 | + id : nat32; |
| 129 | + chunk_index : nat32; |
| 130 | + content : blob; |
| 131 | +}; |
| 132 | +type UpdateFileChunkOutput = record { updated_at : nat64; filled : nat64 }; |
| 133 | +type UpdateFileInput = record { |
| 134 | + id : nat32; |
| 135 | + status : opt int8; |
| 136 | + custom : opt vec record { text; MetadataValue }; |
| 137 | + hash : opt blob; |
| 138 | + name : opt text; |
| 139 | + size : opt nat64; |
| 140 | + content_type : opt text; |
| 141 | +}; |
| 142 | +type UpdateFileOutput = record { updated_at : nat64 }; |
| 143 | +type UpdateFolderInput = record { |
| 144 | + id : nat32; |
| 145 | + status : opt int8; |
| 146 | + name : opt text; |
| 147 | +}; |
| 148 | +type UpgradeArgs = record { |
| 149 | + max_custom_data_size : opt nat16; |
| 150 | + max_children : opt nat16; |
| 151 | + enable_hash_index : opt bool; |
| 152 | + max_file_size : opt nat64; |
| 153 | + max_folder_depth : opt nat8; |
| 154 | +}; |
| 155 | +service : (opt CanisterArgs) -> { |
| 156 | + admin_add_auditors : (vec principal) -> (Result); |
| 157 | + admin_add_managers : (vec principal) -> (Result); |
| 158 | + admin_remove_auditors : (vec principal) -> (Result); |
| 159 | + admin_remove_managers : (vec principal) -> (Result); |
| 160 | + admin_set_auditors : (vec principal) -> (Result); |
| 161 | + admin_set_managers : (vec principal) -> (Result); |
| 162 | + admin_update_bucket : (UpdateBucketInput) -> (Result); |
| 163 | + api_version : () -> (nat16) query; |
| 164 | + batch_delete_subfiles : (nat32, vec nat32, opt blob) -> (Result_1); |
| 165 | + create_file : (CreateFileInput, opt blob) -> (Result_2); |
| 166 | + create_folder : (CreateFolderInput, opt blob) -> (Result_2); |
| 167 | + delete_file : (nat32, opt blob) -> (Result_3); |
| 168 | + delete_folder : (nat32, opt blob) -> (Result_3); |
| 169 | + get_bucket_info : (opt blob) -> (Result_4) query; |
| 170 | + get_canister_status : () -> (Result_5); |
| 171 | + get_file_ancestors : (nat32, opt blob) -> (Result_6) query; |
| 172 | + get_file_chunks : (nat32, nat32, opt nat32, opt blob) -> (Result_7) query; |
| 173 | + get_file_info : (nat32, opt blob) -> (Result_8) query; |
| 174 | + get_file_info_by_hash : (blob, opt blob) -> (Result_8) query; |
| 175 | + get_folder_ancestors : (nat32, opt blob) -> (Result_6) query; |
| 176 | + get_folder_info : (nat32, opt blob) -> (Result_9) query; |
| 177 | + list_files : (nat32, opt nat32, opt nat32, opt blob) -> (Result_10) query; |
| 178 | + list_folders : (nat32, opt nat32, opt nat32, opt blob) -> (Result_11) query; |
| 179 | + move_file : (MoveInput, opt blob) -> (Result_12); |
| 180 | + move_folder : (MoveInput, opt blob) -> (Result_12); |
| 181 | + update_file_chunk : (UpdateFileChunkInput, opt blob) -> (Result_13); |
| 182 | + update_file_info : (UpdateFileInput, opt blob) -> (Result_12); |
| 183 | + update_folder_info : (UpdateFolderInput, opt blob) -> (Result_12); |
| 184 | + validate2_admin_set_auditors : (vec principal) -> (Result_14); |
| 185 | + validate2_admin_set_managers : (vec principal) -> (Result_14); |
| 186 | + validate2_admin_update_bucket : (UpdateBucketInput) -> (Result_14); |
| 187 | + validate_admin_add_auditors : (vec principal) -> (Result_14); |
| 188 | + validate_admin_add_managers : (vec principal) -> (Result_14); |
| 189 | + validate_admin_remove_auditors : (vec principal) -> (Result_14); |
| 190 | + validate_admin_remove_managers : (vec principal) -> (Result_14); |
| 191 | + validate_admin_set_auditors : (vec principal) -> (Result); |
| 192 | + validate_admin_set_managers : (vec principal) -> (Result); |
| 193 | + validate_admin_update_bucket : (UpdateBucketInput) -> (Result); |
| 194 | +} |
0 commit comments