{
  "version": 3,
  "sources": ["../src/ic-management.canister.ts", "../src/candid/ic-management.certified.idl.js", "../src/candid/ic-management.idl.js", "../src/types/ic-management.params.ts", "../src/types/snapshot.params.ts", "../src/utils/ic-management.utils.ts", "../src/types/snapshot.responses.ts", "../src/utils/transform.utils.ts"],
  "sourcesContent": ["import {\n  createServices,\n  hexStringToUint8Array,\n  toNullable,\n  type QueryParams,\n} from \"@dfinity/utils\";\nimport { Principal } from \"@icp-sdk/core/principal\";\nimport type {\n  chunk_hash,\n  _SERVICE as IcManagementService,\n  list_canister_snapshots_result,\n  read_canister_snapshot_data_response,\n  take_canister_snapshot_result,\n  upload_canister_snapshot_metadata_response,\n} from \"./candid/ic-management\";\nimport { idlFactory as certifiedIdlFactory } from \"./candid/ic-management.certified.idl\";\nimport { idlFactory } from \"./candid/ic-management.idl\";\nimport type { ICManagementCanisterOptions } from \"./types/canister.options\";\nimport {\n  toCanisterSettings,\n  type ClearChunkStoreParams,\n  type CreateCanisterParams,\n  type InstallChunkedCodeParams,\n  type InstallCodeParams,\n  type ProvisionalCreateCanisterWithCyclesParams,\n  type StoredChunksParams,\n  type UninstallCodeParams,\n  type UpdateSettingsParams,\n  type UploadChunkParams,\n} from \"./types/ic-management.params\";\nimport type {\n  CanisterStatusResponse,\n  FetchCanisterLogsResponse,\n} from \"./types/ic-management.responses\";\nimport {\n  toCanisterSnapshotMetadataKind,\n  toReplaceSnapshotArgs,\n  toSnapshotArgs,\n  toUploadCanisterSnapshotDataKind,\n  toUploadCanisterSnapshotMetadata,\n  type OptionSnapshotParams,\n  type ReadCanisterSnapshotDataParams,\n  type SnapshotParams,\n  type UploadCanisterSnapshotDataParams,\n  type UploadCanisterSnapshotMetadataParams,\n} from \"./types/snapshot.params\";\nimport {\n  fromReadCanisterSnapshotMetadataResponse,\n  type ReadCanisterSnapshotMetadataResponse,\n} from \"./types/snapshot.responses\";\nimport { transform } from \"./utils/transform.utils\";\n\nexport class ICManagementCanister {\n  private constructor(\n    private readonly service: IcManagementService,\n    private readonly certifiedService: IcManagementService,\n  ) {}\n\n  private caller = ({ certified = true }: QueryParams): IcManagementService =>\n    certified ? this.certifiedService : this.service;\n\n  public static create(options: ICManagementCanisterOptions) {\n    const { service, certifiedService } = createServices<IcManagementService>({\n      options: {\n        ...options,\n        // Resolve to \"aaaaa-aa\" on mainnet\n        canisterId: Principal.fromHex(\"\"),\n        callTransform: transform,\n        queryTransform: transform,\n      },\n      idlFactory,\n      certifiedIdlFactory,\n    });\n\n    return new ICManagementCanister(service, certifiedService);\n  }\n\n  /**\n   * Create a new canister\n   *\n   * @param {Object} params\n   * @param {CanisterSettings} params.settings\n   * @param {BigInt} params.senderCanisterVersion\n   * @returns {Promise<Principal>}\n   */\n  createCanister = async ({\n    settings,\n    senderCanisterVersion,\n  }: CreateCanisterParams = {}): Promise<Principal> => {\n    const { create_canister } = this.certifiedService;\n\n    const { canister_id } = await create_canister({\n      settings: toNullable(toCanisterSettings(settings)),\n      sender_canister_version: toNullable(senderCanisterVersion),\n    });\n\n    return canister_id;\n  };\n\n  /**\n   * Update canister settings\n   *\n   * @param {Object} params\n   * @param {Principal} params.canisterId\n   * @param {BigInt} params.senderCanisterVersion\n   * @param {CanisterSettings} params.settings\n   * @returns {Promise<void>}\n   */\n  updateSettings = ({\n    canisterId,\n    senderCanisterVersion,\n    settings,\n  }: UpdateSettingsParams): Promise<void> => {\n    const { update_settings } = this.certifiedService;\n\n    return update_settings({\n      canister_id: canisterId,\n      sender_canister_version: toNullable(senderCanisterVersion),\n      settings: toCanisterSettings(settings),\n    });\n  };\n\n  /**\n   * Install code to a canister\n   *\n   * @param {Object} params\n   * @param {canister_install_mode} params.mode\n   * @param {Principal} params.canisterId\n   * @param {Uint8Array} params.wasmModule\n   * @param {Uint8Array} params.arg\n   * @param {BigInt} params.senderCanisterVersion\n   * @returns {Promise<void>}\n   */\n  installCode = ({\n    canisterId,\n    wasmModule,\n    senderCanisterVersion,\n    ...rest\n  }: InstallCodeParams): Promise<void> => {\n    const { install_code } = this.certifiedService;\n\n    return install_code({\n      ...rest,\n      canister_id: canisterId,\n      wasm_module: wasmModule,\n      sender_canister_version: toNullable(senderCanisterVersion),\n    });\n  };\n\n  /**\n   * Upload chunks of Wasm modules that are too large to fit in a single message for installation purposes.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec/#ic-upload_chunk\n   *\n   * @param {UploadChunkParams} params\n   * @param {canisterId} params.canisterId The canister in which the chunks will be stored.\n   * @param {Uint8Array | number[]} params.chunk A chunk of Wasm module.\n   * @returns {Promise<chunk_hash>} The hash of the stored chunk.\n   */\n  uploadChunk = ({\n    canisterId,\n    ...rest\n  }: UploadChunkParams): Promise<chunk_hash> => {\n    const { upload_chunk } = this.certifiedService;\n\n    return upload_chunk({\n      canister_id: canisterId,\n      ...rest,\n    });\n  };\n\n  /**\n   * Clear the entire chunk storage of a canister.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec/#ic-clear_chunk_store\n   *\n   * @param {ClearChunkStoreParams} params\n   * @param {canisterId} params.canisterId The canister in which the chunks are stored.\n   */\n  clearChunkStore = async ({\n    canisterId,\n  }: ClearChunkStoreParams): Promise<void> => {\n    const { clear_chunk_store } = this.certifiedService;\n\n    await clear_chunk_store({\n      canister_id: canisterId,\n    });\n  };\n\n  /**\n   * List the hashes of chunks in the chunk storage of a canister.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec/#ic-stored_chunks\n   *\n   * @param {StoredChunksParams} params\n   * @param {canisterId} params.canisterId The canister in which the chunks are stored.\n   * @returns {Promise<chunk_hash[]>} The list of hash of the stored chunks.\n   */\n  storedChunks = ({\n    canisterId,\n  }: StoredChunksParams): Promise<chunk_hash[]> => {\n    const { stored_chunks } = this.certifiedService;\n\n    return stored_chunks({\n      canister_id: canisterId,\n    });\n  };\n\n  /**\n   * Installs code that had previously been uploaded in chunks.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec/#ic-install_chunked_code\n   *\n   * @param {InstallChunkedCodeParams} params\n   * @param {canister_install_mode} params.mode Installation, re-installation or upgrade.\n   * @param {Uint8Array} params.arg The arguments of the canister.\n   * @param {Uint8Array | undefined} params.senderCanisterVersion The optional sender_canister_version parameter can contain the caller's canister version.\n   * @param {Array<chunk_hash>} params.chunkHashesList The list of chunks of the Wasm module to install.\n   * @param {Principal} params.targetCanisterId Specifies the canister where the code should be installed.\n   * @param {Principal | undefined} params.storeCanisterId Specifies the canister in whose chunk storage the chunks are stored (this parameter defaults to target_canister if not specified).\n   * @param {String} params.wasmModuleHash The Wasm module hash as hex string. Used to check that the SHA-256 hash of wasm_module is equal to the wasm_module_hash parameter and can calls install_code with parameters.\n   * @returns {Promise<void>}\n   */\n  installChunkedCode = async ({\n    senderCanisterVersion,\n    chunkHashesList,\n    targetCanisterId,\n    storeCanisterId,\n    wasmModuleHash,\n    ...rest\n  }: InstallChunkedCodeParams): Promise<void> => {\n    const { install_chunked_code } = this.certifiedService;\n\n    await install_chunked_code({\n      ...rest,\n      target_canister: targetCanisterId,\n      store_canister: toNullable(storeCanisterId),\n      sender_canister_version: toNullable(senderCanisterVersion),\n      chunk_hashes_list: chunkHashesList,\n      wasm_module_hash:\n        typeof wasmModuleHash === \"string\"\n          ? hexStringToUint8Array(wasmModuleHash)\n          : wasmModuleHash,\n    });\n  };\n\n  /**\n   * Uninstall code from a canister\n   *\n   * @param {Object} params\n   * @param {Principal} params.canisterId\n   * @param {BigInt} params.senderCanisterVersion\n   * @returns {Promise<void>}\n   */\n  uninstallCode = ({\n    canisterId,\n    senderCanisterVersion,\n  }: UninstallCodeParams): Promise<void> => {\n    const { uninstall_code } = this.certifiedService;\n\n    return uninstall_code({\n      canister_id: canisterId,\n      sender_canister_version: toNullable(senderCanisterVersion),\n    });\n  };\n\n  /**\n   * Start a canister\n   *\n   * @param {Principal} canisterId\n   * @returns {Promise<void>}\n   */\n  startCanister = (canisterId: Principal): Promise<void> => {\n    const { start_canister } = this.certifiedService;\n\n    return start_canister({ canister_id: canisterId });\n  };\n\n  /**\n   * Stop a canister\n   *\n   * @param {Principal} canisterId\n   * @returns {Promise<void>}\n   */\n  stopCanister = (canisterId: Principal): Promise<void> => {\n    const { stop_canister } = this.certifiedService;\n    return stop_canister({ canister_id: canisterId });\n  };\n\n  /**\n   * Get canister details (memory size, status, etc.)\n   *\n   * @param {Principal} canisterId\n   * @returns {Promise<CanisterStatusResponse>}\n   */\n  canisterStatus = (canisterId: Principal): Promise<CanisterStatusResponse> => {\n    const { canister_status } = this.certifiedService;\n\n    return canister_status({\n      canister_id: canisterId,\n    });\n  };\n\n  /**\n   * Deletes a canister\n   *\n   * @param {Principal} canisterId\n   * @returns {Promise<void>}\n   */\n  deleteCanister = (canisterId: Principal): Promise<void> => {\n    const { delete_canister } = this.certifiedService;\n\n    return delete_canister({ canister_id: canisterId });\n  };\n\n  /**\n   * Creates a canister. Only available on development instances.\n   *\n   * @param {Object} params\n   * @param {Principal} params.canisterId\n   * @param {BigInt} params.amount\n   * @param {CanisterSettings} params.settings\n   * @returns {Promise<Principal>}\n   */\n  provisionalCreateCanisterWithCycles = async ({\n    settings,\n    amount,\n    canisterId,\n  }: ProvisionalCreateCanisterWithCyclesParams = {}): Promise<Principal> => {\n    const { provisional_create_canister_with_cycles } = this.certifiedService;\n\n    const { canister_id } = await provisional_create_canister_with_cycles({\n      settings: toNullable(toCanisterSettings(settings)),\n      amount: toNullable(amount),\n      specified_id: toNullable(canisterId),\n      sender_canister_version: [],\n    });\n\n    return canister_id;\n  };\n\n  /**\n   * Given a canister ID as input, this method returns a vector of logs of that canister including its trap messages. The canister logs are not collected in canister methods running in non-replicated mode (NRQ, CQ, CRy, CRt, CC, and F modes, as defined in Overview of imports). The total size of all returned logs does not exceed 4KiB. If new logs are added resulting in exceeding the maximum total log size of 4KiB, the oldest logs will be removed. Logs persist across canister upgrades and they are deleted if the canister is reinstalled or uninstalled.\n   *\n   * @param {Principal} canisterId\n   * @returns {Promise<FetchCanisterLogsResponse>}\n   */\n  fetchCanisterLogs = (\n    canisterId: Principal,\n  ): Promise<FetchCanisterLogsResponse> => {\n    const { fetch_canister_logs } = this.caller({ certified: false });\n\n    return fetch_canister_logs({\n      canister_id: canisterId,\n    });\n  };\n\n  /**\n   * This method takes a snapshot of the specified canister. A snapshot consists of the wasm memory, stable memory, certified variables, wasm chunk store and wasm binary.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-take_canister_snapshot\n   *\n   * @param {Object} params - Parameters for the snapshot operation.\n   * @param {Principal} params.canisterId - The ID of the canister for which the snapshot will be taken.\n   * @param {SnapshotIdText | snapshot_id} [params.snapshotId] - The ID of the snapshot to replace, if applicable.\n   * Can be provided as a `string` or a `Uint8Array`.\n   * If not provided, a new snapshot will be created.\n   *\n   * @returns {Promise<take_canister_snapshot_result>} A promise that resolves with the snapshot details,\n   * including the snapshot ID, total size, and timestamp.\n   *\n   * @throws {Error} If the snapshot operation fails.\n   */\n  takeCanisterSnapshot = (\n    params: OptionSnapshotParams,\n  ): Promise<take_canister_snapshot_result> => {\n    const { take_canister_snapshot } = this.certifiedService;\n\n    return take_canister_snapshot(toReplaceSnapshotArgs(params));\n  };\n\n  /**\n   * Lists the snapshots of a canister.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-list_canister_snapshots\n   *\n   * @param {Object} params - Parameters for the listing operation.\n   * @param {Principal} params.canisterId - The ID of the canister for which snapshots will be listed.\n   *\n   * @returns {Promise<list_canister_snapshots_result>} A promise that resolves with the list of snapshots.\n   *\n   * @throws {Error} If the operation fails.\n   */\n  listCanisterSnapshots = ({\n    canisterId,\n  }: {\n    canisterId: Principal;\n  }): Promise<list_canister_snapshots_result> => {\n    const { list_canister_snapshots } = this.certifiedService;\n\n    return list_canister_snapshots({\n      canister_id: canisterId,\n    });\n  };\n\n  /**\n   * Loads a snapshot of a canister's state.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-load_canister_snapshot\n   *\n   * @param {Object} params - Parameters for the snapshot loading operation.\n   * @param {Principal} params.canisterId - The ID of the canister for which the snapshot will be loaded.\n   * @param {snapshot_id} params.snapshotId - The ID of the snapshot to load.\n   * @param {BigInt} [params.senderCanisterVersion] - The optional sender canister version. If provided, its value must be equal to ic0.canister_version.\n   *\n   * @returns {Promise<void>} A promise that resolves when the snapshot is successfully loaded.\n   *\n   * @throws {Error} If the snapshot loading operation fails.\n   */\n  loadCanisterSnapshot = async ({\n    senderCanisterVersion,\n    ...rest\n  }: SnapshotParams & {\n    senderCanisterVersion?: bigint;\n  }): Promise<void> => {\n    const { load_canister_snapshot } = this.certifiedService;\n\n    await load_canister_snapshot({\n      ...toSnapshotArgs(rest),\n      sender_canister_version: toNullable(senderCanisterVersion),\n    });\n  };\n\n  /**\n   * Deletes a specific snapshot of a canister.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-delete_canister_snapshot\n   *\n   * @param {Object} params - Parameters for the deletion operation.\n   * @param {Principal} params.canisterId - The ID of the canister for which the snapshot will be deleted.\n   * @param {snapshot_id} params.snapshotId - The ID of the snapshot to delete.\n   *\n   * @returns {Promise<void>} A promise that resolves when the snapshot is successfully deleted.\n   *\n   * @throws {Error} If the deletion operation fails.\n   */\n  deleteCanisterSnapshot = async (params: SnapshotParams): Promise<void> => {\n    const { delete_canister_snapshot } = this.certifiedService;\n\n    await delete_canister_snapshot(toSnapshotArgs(params));\n  };\n\n  /**\n   * Reads metadata for a specific canister snapshot.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-read_canister_snapshot_metadata\n   *\n   * @param {Object} params - Parameters for the metadata read operation.\n   * @param {Principal} params.canisterId - The ID of the canister whose snapshot metadata will be read.\n   * @param {SnapshotIdText | snapshot_id} params.snapshotId - The ID of the snapshot to read metadata from.\n   *\n   * @returns {Promise<read_canister_snapshot_metadata_response>} A promise that resolves with the snapshot metadata.\n   *\n   * @throws {Error} If the metadata read operation fails.\n   */\n  readCanisterSnapshotMetadata = async (\n    params: SnapshotParams,\n  ): Promise<ReadCanisterSnapshotMetadataResponse> => {\n    const { read_canister_snapshot_metadata } = this.certifiedService;\n\n    const metadata = await read_canister_snapshot_metadata(\n      toSnapshotArgs(params),\n    );\n\n    return fromReadCanisterSnapshotMetadataResponse(metadata);\n  };\n\n  /**\n   * Reads snapshot data for a specific canister snapshot and kind.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-read_canister_snapshot_data\n   *\n   * @param {Object} params - Parameters for the data read operation.\n   * @param {Principal} params.canisterId - The ID of the canister whose snapshot data will be read.\n   * @param {SnapshotIdText | snapshot_id} params.snapshotId - The ID of the snapshot to read data from.\n   * @param {CanisterSnapshotMetadataKind} params.kind - The kind of data to read.\n   *\n   * @returns {Promise<read_canister_snapshot_data_response>} A promise that resolves with the snapshot data payload.\n   *\n   * @throws {Error} If the data read operation fails.\n   */\n  readCanisterSnapshotData = ({\n    kind,\n    ...params\n  }: ReadCanisterSnapshotDataParams): Promise<read_canister_snapshot_data_response> => {\n    const { read_canister_snapshot_data } = this.certifiedService;\n\n    return read_canister_snapshot_data({\n      ...toSnapshotArgs(params),\n      kind: toCanisterSnapshotMetadataKind(kind),\n    });\n  };\n\n  /**\n   * Uploads snapshot metadata for a canister.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-upload_canister_snapshot_metadata\n   *\n   * @param {Object} params - Parameters for the metadata upload operation.\n   * @param {Principal} params.canisterId - The ID of the canister the snapshot metadata belongs to.\n   * @param {UploadCanisterSnapshotMetadataParam} params.metadata - The metadata payload to upload.\n   * @param {SnapshotIdText | snapshot_id} [params.snapshotId] - If provided, replace a snapshot instead of creating a new one.\n   *\n   * @returns {Promise<upload_canister_snapshot_metadata_response>} A promise that resolves with the upload response.\n   *\n   * @throws {Error} If the metadata upload operation fails.\n   */\n  uploadCanisterSnapshotMetadata = ({\n    metadata,\n    ...params\n  }: UploadCanisterSnapshotMetadataParams): Promise<upload_canister_snapshot_metadata_response> => {\n    const { upload_canister_snapshot_metadata } = this.certifiedService;\n\n    return upload_canister_snapshot_metadata({\n      ...toUploadCanisterSnapshotMetadata(metadata),\n      ...toReplaceSnapshotArgs(params),\n    });\n  };\n\n  /**\n   * Uploads a chunk of snapshot data for a canister snapshot.\n   *\n   * @link https://internetcomputer.org/docs/current/references/ic-interface-spec#ic-upload_canister_snapshot_data\n   *\n   * @param {Object} params - Parameters for the data upload operation.\n   * @param {Principal} params.canisterId - The ID of the canister the snapshot belongs to.\n   * @param {SnapshotIdText | snapshot_id} params.snapshotId - The ID of the snapshot to which data is uploaded.\n   * @param {UploadCanisterSnapshotDataKind} params.kind - The target to upload to.\n   * @param {Uint8Array | number[]} params.chunk - The raw bytes to upload.\n   *\n   * @returns {Promise<void>} A promise that resolves when the data is successfully uploaded.\n   *\n   * @throws {Error} If the data upload operation fails.\n   */\n  uploadCanisterSnapshotData = async ({\n    kind,\n    chunk,\n    ...params\n  }: UploadCanisterSnapshotDataParams): Promise<void> => {\n    const { upload_canister_snapshot_data } = this.certifiedService;\n\n    await upload_canister_snapshot_data({\n      ...toSnapshotArgs(params),\n      chunk,\n      kind: toUploadCanisterSnapshotDataKind(kind),\n    });\n  };\n}\n", "/* eslint-disable */\n\n// @ts-nocheck\n\n// This file was automatically generated by @icp-sdk/bindgen@0.2.0-patch-typed-arrays.\n// You should NOT make any changes in this file as it will be overwritten.\n// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.\n\nexport const idlFactory = ({ IDL }) => {\n  const bitcoin_network = IDL.Variant({\n    mainnet: IDL.Null,\n    testnet: IDL.Null,\n  });\n  const bitcoin_address = IDL.Text;\n  const bitcoin_get_balance_args = IDL.Record({\n    network: bitcoin_network,\n    address: bitcoin_address,\n    min_confirmations: IDL.Opt(IDL.Nat32),\n  });\n  const satoshi = IDL.Nat64;\n  const bitcoin_get_balance_result = satoshi;\n  const bitcoin_block_height = IDL.Nat32;\n  const bitcoin_get_block_headers_args = IDL.Record({\n    start_height: bitcoin_block_height,\n    end_height: IDL.Opt(bitcoin_block_height),\n    network: bitcoin_network,\n  });\n  const bitcoin_block_header = IDL.Vec(IDL.Nat8);\n  const bitcoin_get_block_headers_result = IDL.Record({\n    tip_height: bitcoin_block_height,\n    block_headers: IDL.Vec(bitcoin_block_header),\n  });\n  const bitcoin_get_current_fee_percentiles_args = IDL.Record({\n    network: bitcoin_network,\n  });\n  const millisatoshi_per_byte = IDL.Nat64;\n  const bitcoin_get_current_fee_percentiles_result = IDL.Vec(\n    millisatoshi_per_byte,\n  );\n  const bitcoin_get_utxos_args = IDL.Record({\n    network: bitcoin_network,\n    filter: IDL.Opt(\n      IDL.Variant({\n        page: IDL.Vec(IDL.Nat8),\n        min_confirmations: IDL.Nat32,\n      }),\n    ),\n    address: bitcoin_address,\n  });\n  const bitcoin_block_hash = IDL.Vec(IDL.Nat8);\n  const outpoint = IDL.Record({\n    txid: IDL.Vec(IDL.Nat8),\n    vout: IDL.Nat32,\n  });\n  const utxo = IDL.Record({\n    height: IDL.Nat32,\n    value: satoshi,\n    outpoint: outpoint,\n  });\n  const bitcoin_get_utxos_result = IDL.Record({\n    next_page: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    tip_height: bitcoin_block_height,\n    tip_block_hash: bitcoin_block_hash,\n    utxos: IDL.Vec(utxo),\n  });\n  const bitcoin_send_transaction_args = IDL.Record({\n    transaction: IDL.Vec(IDL.Nat8),\n    network: bitcoin_network,\n  });\n  const canister_id = IDL.Principal;\n  const canister_info_args = IDL.Record({\n    canister_id: canister_id,\n    num_requested_changes: IDL.Opt(IDL.Nat64),\n  });\n  const change_origin = IDL.Variant({\n    from_user: IDL.Record({ user_id: IDL.Principal }),\n    from_canister: IDL.Record({\n      canister_version: IDL.Opt(IDL.Nat64),\n      canister_id: IDL.Principal,\n    }),\n  });\n  const snapshot_id = IDL.Vec(IDL.Nat8);\n  const change_details = IDL.Variant({\n    creation: IDL.Record({\n      controllers: IDL.Vec(IDL.Principal),\n      environment_variables_hash: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    }),\n    code_deployment: IDL.Record({\n      mode: IDL.Variant({\n        reinstall: IDL.Null,\n        upgrade: IDL.Null,\n        install: IDL.Null,\n      }),\n      module_hash: IDL.Vec(IDL.Nat8),\n    }),\n    load_snapshot: IDL.Record({\n      canister_version: IDL.Nat64,\n      source: IDL.Variant({\n        metadata_upload: IDL.Reserved,\n        taken_from_canister: IDL.Reserved,\n      }),\n      from_canister_id: IDL.Opt(IDL.Principal),\n      taken_at_timestamp: IDL.Nat64,\n      snapshot_id: snapshot_id,\n    }),\n    controllers_change: IDL.Record({\n      controllers: IDL.Vec(IDL.Principal),\n    }),\n    code_uninstall: IDL.Null,\n  });\n  const change = IDL.Record({\n    timestamp_nanos: IDL.Nat64,\n    canister_version: IDL.Nat64,\n    origin: change_origin,\n    details: change_details,\n  });\n  const canister_info_result = IDL.Record({\n    controllers: IDL.Vec(IDL.Principal),\n    module_hash: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    recent_changes: IDL.Vec(change),\n    total_num_changes: IDL.Nat64,\n  });\n  const canister_metadata_args = IDL.Record({\n    name: IDL.Text,\n    canister_id: canister_id,\n  });\n  const canister_metadata_result = IDL.Record({ value: IDL.Vec(IDL.Nat8) });\n  const canister_status_args = IDL.Record({ canister_id: canister_id });\n  const environment_variable = IDL.Record({\n    value: IDL.Text,\n    name: IDL.Text,\n  });\n  const log_visibility = IDL.Variant({\n    controllers: IDL.Null,\n    public: IDL.Null,\n    allowed_viewers: IDL.Vec(IDL.Principal),\n  });\n  const definite_canister_settings = IDL.Record({\n    freezing_threshold: IDL.Nat,\n    wasm_memory_threshold: IDL.Nat,\n    environment_variables: IDL.Vec(environment_variable),\n    controllers: IDL.Vec(IDL.Principal),\n    reserved_cycles_limit: IDL.Nat,\n    log_visibility: log_visibility,\n    wasm_memory_limit: IDL.Nat,\n    memory_allocation: IDL.Nat,\n    compute_allocation: IDL.Nat,\n  });\n  const canister_status_result = IDL.Record({\n    memory_metrics: IDL.Record({\n      wasm_binary_size: IDL.Nat,\n      wasm_chunk_store_size: IDL.Nat,\n      canister_history_size: IDL.Nat,\n      stable_memory_size: IDL.Nat,\n      snapshots_size: IDL.Nat,\n      wasm_memory_size: IDL.Nat,\n      global_memory_size: IDL.Nat,\n      custom_sections_size: IDL.Nat,\n    }),\n    status: IDL.Variant({\n      stopped: IDL.Null,\n      stopping: IDL.Null,\n      running: IDL.Null,\n    }),\n    memory_size: IDL.Nat,\n    ready_for_migration: IDL.Bool,\n    version: IDL.Nat64,\n    cycles: IDL.Nat,\n    settings: definite_canister_settings,\n    query_stats: IDL.Record({\n      response_payload_bytes_total: IDL.Nat,\n      num_instructions_total: IDL.Nat,\n      num_calls_total: IDL.Nat,\n      request_payload_bytes_total: IDL.Nat,\n    }),\n    idle_cycles_burned_per_day: IDL.Nat,\n    module_hash: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    reserved_cycles: IDL.Nat,\n  });\n  const clear_chunk_store_args = IDL.Record({ canister_id: canister_id });\n  const canister_settings = IDL.Record({\n    freezing_threshold: IDL.Opt(IDL.Nat),\n    wasm_memory_threshold: IDL.Opt(IDL.Nat),\n    environment_variables: IDL.Opt(IDL.Vec(environment_variable)),\n    controllers: IDL.Opt(IDL.Vec(IDL.Principal)),\n    reserved_cycles_limit: IDL.Opt(IDL.Nat),\n    log_visibility: IDL.Opt(log_visibility),\n    wasm_memory_limit: IDL.Opt(IDL.Nat),\n    memory_allocation: IDL.Opt(IDL.Nat),\n    compute_allocation: IDL.Opt(IDL.Nat),\n  });\n  const create_canister_args = IDL.Record({\n    settings: IDL.Opt(canister_settings),\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const create_canister_result = IDL.Record({ canister_id: canister_id });\n  const delete_canister_args = IDL.Record({ canister_id: canister_id });\n  const delete_canister_snapshot_args = IDL.Record({\n    canister_id: canister_id,\n    snapshot_id: snapshot_id,\n  });\n  const deposit_cycles_args = IDL.Record({ canister_id: canister_id });\n  const ecdsa_curve = IDL.Variant({ secp256k1: IDL.Null });\n  const ecdsa_public_key_args = IDL.Record({\n    key_id: IDL.Record({ name: IDL.Text, curve: ecdsa_curve }),\n    canister_id: IDL.Opt(canister_id),\n    derivation_path: IDL.Vec(IDL.Vec(IDL.Nat8)),\n  });\n  const ecdsa_public_key_result = IDL.Record({\n    public_key: IDL.Vec(IDL.Nat8),\n    chain_code: IDL.Vec(IDL.Nat8),\n  });\n  const fetch_canister_logs_args = IDL.Record({ canister_id: canister_id });\n  const canister_log_record = IDL.Record({\n    idx: IDL.Nat64,\n    timestamp_nanos: IDL.Nat64,\n    content: IDL.Vec(IDL.Nat8),\n  });\n  const fetch_canister_logs_result = IDL.Record({\n    canister_log_records: IDL.Vec(canister_log_record),\n  });\n  const http_header = IDL.Record({ value: IDL.Text, name: IDL.Text });\n  const http_request_result = IDL.Record({\n    status: IDL.Nat,\n    body: IDL.Vec(IDL.Nat8),\n    headers: IDL.Vec(http_header),\n  });\n  const http_request_args = IDL.Record({\n    url: IDL.Text,\n    method: IDL.Variant({\n      get: IDL.Null,\n      head: IDL.Null,\n      post: IDL.Null,\n    }),\n    max_response_bytes: IDL.Opt(IDL.Nat64),\n    body: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    transform: IDL.Opt(\n      IDL.Record({\n        function: IDL.Func(\n          [\n            IDL.Record({\n              context: IDL.Vec(IDL.Nat8),\n              response: http_request_result,\n            }),\n          ],\n          [http_request_result],\n          [],\n        ),\n        context: IDL.Vec(IDL.Nat8),\n      }),\n    ),\n    headers: IDL.Vec(http_header),\n    is_replicated: IDL.Opt(IDL.Bool),\n  });\n  const canister_install_mode = IDL.Variant({\n    reinstall: IDL.Null,\n    upgrade: IDL.Opt(\n      IDL.Record({\n        wasm_memory_persistence: IDL.Opt(\n          IDL.Variant({ keep: IDL.Null, replace: IDL.Null }),\n        ),\n        skip_pre_upgrade: IDL.Opt(IDL.Bool),\n      }),\n    ),\n    install: IDL.Null,\n  });\n  const chunk_hash = IDL.Record({ hash: IDL.Vec(IDL.Nat8) });\n  const install_chunked_code_args = IDL.Record({\n    arg: IDL.Vec(IDL.Nat8),\n    wasm_module_hash: IDL.Vec(IDL.Nat8),\n    mode: canister_install_mode,\n    chunk_hashes_list: IDL.Vec(chunk_hash),\n    target_canister: canister_id,\n    store_canister: IDL.Opt(canister_id),\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const wasm_module = IDL.Vec(IDL.Nat8);\n  const install_code_args = IDL.Record({\n    arg: IDL.Vec(IDL.Nat8),\n    wasm_module: wasm_module,\n    mode: canister_install_mode,\n    canister_id: canister_id,\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const list_canister_snapshots_args = IDL.Record({\n    canister_id: canister_id,\n  });\n  const snapshot = IDL.Record({\n    id: snapshot_id,\n    total_size: IDL.Nat64,\n    taken_at_timestamp: IDL.Nat64,\n  });\n  const list_canister_snapshots_result = IDL.Vec(snapshot);\n  const load_canister_snapshot_args = IDL.Record({\n    canister_id: canister_id,\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n    snapshot_id: snapshot_id,\n  });\n  const node_metrics_history_args = IDL.Record({\n    start_at_timestamp_nanos: IDL.Nat64,\n    subnet_id: IDL.Principal,\n  });\n  const node_metrics = IDL.Record({\n    num_block_failures_total: IDL.Nat64,\n    node_id: IDL.Principal,\n    num_blocks_proposed_total: IDL.Nat64,\n  });\n  const node_metrics_history_result = IDL.Vec(\n    IDL.Record({\n      timestamp_nanos: IDL.Nat64,\n      node_metrics: IDL.Vec(node_metrics),\n    }),\n  );\n  const provisional_create_canister_with_cycles_args = IDL.Record({\n    settings: IDL.Opt(canister_settings),\n    specified_id: IDL.Opt(canister_id),\n    amount: IDL.Opt(IDL.Nat),\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const provisional_create_canister_with_cycles_result = IDL.Record({\n    canister_id: canister_id,\n  });\n  const provisional_top_up_canister_args = IDL.Record({\n    canister_id: canister_id,\n    amount: IDL.Nat,\n  });\n  const raw_rand_result = IDL.Vec(IDL.Nat8);\n  const read_canister_snapshot_data_args = IDL.Record({\n    kind: IDL.Variant({\n      wasm_module: IDL.Record({ size: IDL.Nat64, offset: IDL.Nat64 }),\n      wasm_memory: IDL.Record({ size: IDL.Nat64, offset: IDL.Nat64 }),\n      stable_memory: IDL.Record({\n        size: IDL.Nat64,\n        offset: IDL.Nat64,\n      }),\n      wasm_chunk: IDL.Record({ hash: IDL.Vec(IDL.Nat8) }),\n    }),\n    canister_id: canister_id,\n    snapshot_id: snapshot_id,\n  });\n  const read_canister_snapshot_data_response = IDL.Record({\n    chunk: IDL.Vec(IDL.Nat8),\n  });\n  const read_canister_snapshot_metadata_args = IDL.Record({\n    canister_id: canister_id,\n    snapshot_id: snapshot_id,\n  });\n  const read_canister_snapshot_metadata_response = IDL.Record({\n    globals: IDL.Vec(\n      IDL.Variant({\n        f32: IDL.Float32,\n        f64: IDL.Float64,\n        i32: IDL.Int32,\n        i64: IDL.Int64,\n        v128: IDL.Nat,\n      }),\n    ),\n    canister_version: IDL.Nat64,\n    source: IDL.Variant({\n      metadata_upload: IDL.Reserved,\n      taken_from_canister: IDL.Reserved,\n    }),\n    certified_data: IDL.Vec(IDL.Nat8),\n    global_timer: IDL.Opt(\n      IDL.Variant({ active: IDL.Nat64, inactive: IDL.Null }),\n    ),\n    on_low_wasm_memory_hook_status: IDL.Opt(\n      IDL.Variant({\n        condition_not_satisfied: IDL.Null,\n        executed: IDL.Null,\n        ready: IDL.Null,\n      }),\n    ),\n    wasm_module_size: IDL.Nat64,\n    stable_memory_size: IDL.Nat64,\n    wasm_chunk_store: IDL.Vec(IDL.Record({ hash: IDL.Vec(IDL.Nat8) })),\n    taken_at_timestamp: IDL.Nat64,\n    wasm_memory_size: IDL.Nat64,\n  });\n  const schnorr_algorithm = IDL.Variant({\n    ed25519: IDL.Null,\n    bip340secp256k1: IDL.Null,\n  });\n  const schnorr_public_key_args = IDL.Record({\n    key_id: IDL.Record({\n      algorithm: schnorr_algorithm,\n      name: IDL.Text,\n    }),\n    canister_id: IDL.Opt(canister_id),\n    derivation_path: IDL.Vec(IDL.Vec(IDL.Nat8)),\n  });\n  const schnorr_public_key_result = IDL.Record({\n    public_key: IDL.Vec(IDL.Nat8),\n    chain_code: IDL.Vec(IDL.Nat8),\n  });\n  const sign_with_ecdsa_args = IDL.Record({\n    key_id: IDL.Record({ name: IDL.Text, curve: ecdsa_curve }),\n    derivation_path: IDL.Vec(IDL.Vec(IDL.Nat8)),\n    message_hash: IDL.Vec(IDL.Nat8),\n  });\n  const sign_with_ecdsa_result = IDL.Record({\n    signature: IDL.Vec(IDL.Nat8),\n  });\n  const schnorr_aux = IDL.Variant({\n    bip341: IDL.Record({ merkle_root_hash: IDL.Vec(IDL.Nat8) }),\n  });\n  const sign_with_schnorr_args = IDL.Record({\n    aux: IDL.Opt(schnorr_aux),\n    key_id: IDL.Record({\n      algorithm: schnorr_algorithm,\n      name: IDL.Text,\n    }),\n    derivation_path: IDL.Vec(IDL.Vec(IDL.Nat8)),\n    message: IDL.Vec(IDL.Nat8),\n  });\n  const sign_with_schnorr_result = IDL.Record({\n    signature: IDL.Vec(IDL.Nat8),\n  });\n  const start_canister_args = IDL.Record({ canister_id: canister_id });\n  const stop_canister_args = IDL.Record({ canister_id: canister_id });\n  const stored_chunks_args = IDL.Record({ canister_id: canister_id });\n  const stored_chunks_result = IDL.Vec(chunk_hash);\n  const subnet_info_args = IDL.Record({ subnet_id: IDL.Principal });\n  const subnet_info_result = IDL.Record({\n    replica_version: IDL.Text,\n    registry_version: IDL.Nat64,\n  });\n  const take_canister_snapshot_args = IDL.Record({\n    replace_snapshot: IDL.Opt(snapshot_id),\n    canister_id: canister_id,\n  });\n  const take_canister_snapshot_result = snapshot;\n  const uninstall_code_args = IDL.Record({\n    canister_id: canister_id,\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const update_settings_args = IDL.Record({\n    canister_id: IDL.Principal,\n    settings: canister_settings,\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const upload_canister_snapshot_data_args = IDL.Record({\n    chunk: IDL.Vec(IDL.Nat8),\n    kind: IDL.Variant({\n      wasm_module: IDL.Record({ offset: IDL.Nat64 }),\n      wasm_memory: IDL.Record({ offset: IDL.Nat64 }),\n      stable_memory: IDL.Record({ offset: IDL.Nat64 }),\n      wasm_chunk: IDL.Null,\n    }),\n    canister_id: canister_id,\n    snapshot_id: snapshot_id,\n  });\n  const upload_canister_snapshot_metadata_args = IDL.Record({\n    globals: IDL.Vec(\n      IDL.Variant({\n        f32: IDL.Float32,\n        f64: IDL.Float64,\n        i32: IDL.Int32,\n        i64: IDL.Int64,\n        v128: IDL.Nat,\n      }),\n    ),\n    replace_snapshot: IDL.Opt(snapshot_id),\n    certified_data: IDL.Vec(IDL.Nat8),\n    global_timer: IDL.Opt(\n      IDL.Variant({ active: IDL.Nat64, inactive: IDL.Null }),\n    ),\n    on_low_wasm_memory_hook_status: IDL.Opt(\n      IDL.Variant({\n        condition_not_satisfied: IDL.Null,\n        executed: IDL.Null,\n        ready: IDL.Null,\n      }),\n    ),\n    wasm_module_size: IDL.Nat64,\n    canister_id: canister_id,\n    stable_memory_size: IDL.Nat64,\n    wasm_memory_size: IDL.Nat64,\n  });\n  const upload_canister_snapshot_metadata_response = IDL.Record({\n    snapshot_id: snapshot_id,\n  });\n  const upload_chunk_args = IDL.Record({\n    chunk: IDL.Vec(IDL.Nat8),\n    canister_id: IDL.Principal,\n  });\n  const upload_chunk_result = chunk_hash;\n  const vetkd_curve = IDL.Variant({ bls12_381_g2: IDL.Null });\n  const vetkd_derive_key_args = IDL.Record({\n    context: IDL.Vec(IDL.Nat8),\n    key_id: IDL.Record({ name: IDL.Text, curve: vetkd_curve }),\n    input: IDL.Vec(IDL.Nat8),\n    transport_public_key: IDL.Vec(IDL.Nat8),\n  });\n  const vetkd_derive_key_result = IDL.Record({\n    encrypted_key: IDL.Vec(IDL.Nat8),\n  });\n  const vetkd_public_key_args = IDL.Record({\n    context: IDL.Vec(IDL.Nat8),\n    key_id: IDL.Record({ name: IDL.Text, curve: vetkd_curve }),\n    canister_id: IDL.Opt(canister_id),\n  });\n  const vetkd_public_key_result = IDL.Record({\n    public_key: IDL.Vec(IDL.Nat8),\n  });\n\n  return IDL.Service({\n    bitcoin_get_balance: IDL.Func(\n      [bitcoin_get_balance_args],\n      [bitcoin_get_balance_result],\n      [],\n    ),\n    bitcoin_get_block_headers: IDL.Func(\n      [bitcoin_get_block_headers_args],\n      [bitcoin_get_block_headers_result],\n      [],\n    ),\n    bitcoin_get_current_fee_percentiles: IDL.Func(\n      [bitcoin_get_current_fee_percentiles_args],\n      [bitcoin_get_current_fee_percentiles_result],\n      [],\n    ),\n    bitcoin_get_utxos: IDL.Func(\n      [bitcoin_get_utxos_args],\n      [bitcoin_get_utxos_result],\n      [],\n    ),\n    bitcoin_send_transaction: IDL.Func([bitcoin_send_transaction_args], [], []),\n    canister_info: IDL.Func([canister_info_args], [canister_info_result], []),\n    canister_metadata: IDL.Func(\n      [canister_metadata_args],\n      [canister_metadata_result],\n      [],\n    ),\n    canister_status: IDL.Func(\n      [canister_status_args],\n      [canister_status_result],\n      [],\n    ),\n    clear_chunk_store: IDL.Func([clear_chunk_store_args], [], []),\n    create_canister: IDL.Func(\n      [create_canister_args],\n      [create_canister_result],\n      [],\n    ),\n    delete_canister: IDL.Func([delete_canister_args], [], []),\n    delete_canister_snapshot: IDL.Func([delete_canister_snapshot_args], [], []),\n    deposit_cycles: IDL.Func([deposit_cycles_args], [], []),\n    ecdsa_public_key: IDL.Func(\n      [ecdsa_public_key_args],\n      [ecdsa_public_key_result],\n      [],\n    ),\n    fetch_canister_logs: IDL.Func(\n      [fetch_canister_logs_args],\n      [fetch_canister_logs_result],\n      [],\n    ),\n    http_request: IDL.Func([http_request_args], [http_request_result], []),\n    install_chunked_code: IDL.Func([install_chunked_code_args], [], []),\n    install_code: IDL.Func([install_code_args], [], []),\n    list_canister_snapshots: IDL.Func(\n      [list_canister_snapshots_args],\n      [list_canister_snapshots_result],\n      [],\n    ),\n    load_canister_snapshot: IDL.Func([load_canister_snapshot_args], [], []),\n    node_metrics_history: IDL.Func(\n      [node_metrics_history_args],\n      [node_metrics_history_result],\n      [],\n    ),\n    provisional_create_canister_with_cycles: IDL.Func(\n      [provisional_create_canister_with_cycles_args],\n      [provisional_create_canister_with_cycles_result],\n      [],\n    ),\n    provisional_top_up_canister: IDL.Func(\n      [provisional_top_up_canister_args],\n      [],\n      [],\n    ),\n    raw_rand: IDL.Func([], [raw_rand_result], []),\n    read_canister_snapshot_data: IDL.Func(\n      [read_canister_snapshot_data_args],\n      [read_canister_snapshot_data_response],\n      [],\n    ),\n    read_canister_snapshot_metadata: IDL.Func(\n      [read_canister_snapshot_metadata_args],\n      [read_canister_snapshot_metadata_response],\n      [],\n    ),\n    schnorr_public_key: IDL.Func(\n      [schnorr_public_key_args],\n      [schnorr_public_key_result],\n      [],\n    ),\n    sign_with_ecdsa: IDL.Func(\n      [sign_with_ecdsa_args],\n      [sign_with_ecdsa_result],\n      [],\n    ),\n    sign_with_schnorr: IDL.Func(\n      [sign_with_schnorr_args],\n      [sign_with_schnorr_result],\n      [],\n    ),\n    start_canister: IDL.Func([start_canister_args], [], []),\n    stop_canister: IDL.Func([stop_canister_args], [], []),\n    stored_chunks: IDL.Func([stored_chunks_args], [stored_chunks_result], []),\n    subnet_info: IDL.Func([subnet_info_args], [subnet_info_result], []),\n    take_canister_snapshot: IDL.Func(\n      [take_canister_snapshot_args],\n      [take_canister_snapshot_result],\n      [],\n    ),\n    uninstall_code: IDL.Func([uninstall_code_args], [], []),\n    update_settings: IDL.Func([update_settings_args], [], []),\n    upload_canister_snapshot_data: IDL.Func(\n      [upload_canister_snapshot_data_args],\n      [],\n      [],\n    ),\n    upload_canister_snapshot_metadata: IDL.Func(\n      [upload_canister_snapshot_metadata_args],\n      [upload_canister_snapshot_metadata_response],\n      [],\n    ),\n    upload_chunk: IDL.Func([upload_chunk_args], [upload_chunk_result], []),\n    vetkd_derive_key: IDL.Func(\n      [vetkd_derive_key_args],\n      [vetkd_derive_key_result],\n      [],\n    ),\n    vetkd_public_key: IDL.Func(\n      [vetkd_public_key_args],\n      [vetkd_public_key_result],\n      [],\n    ),\n  });\n};\n\nexport const init = ({ IDL }) => {\n  return [];\n};\n", "/* eslint-disable */\n\n// @ts-nocheck\n\n// This file was automatically generated by @icp-sdk/bindgen@0.2.0-patch-typed-arrays.\n// You should NOT make any changes in this file as it will be overwritten.\n// Additionally, you should also exclude this file from your linter and/or formatter to prevent it from being checked or modified.\n\nexport const idlFactory = ({ IDL }) => {\n  const bitcoin_network = IDL.Variant({\n    mainnet: IDL.Null,\n    testnet: IDL.Null,\n  });\n  const bitcoin_address = IDL.Text;\n  const bitcoin_get_balance_args = IDL.Record({\n    network: bitcoin_network,\n    address: bitcoin_address,\n    min_confirmations: IDL.Opt(IDL.Nat32),\n  });\n  const satoshi = IDL.Nat64;\n  const bitcoin_get_balance_result = satoshi;\n  const bitcoin_block_height = IDL.Nat32;\n  const bitcoin_get_block_headers_args = IDL.Record({\n    start_height: bitcoin_block_height,\n    end_height: IDL.Opt(bitcoin_block_height),\n    network: bitcoin_network,\n  });\n  const bitcoin_block_header = IDL.Vec(IDL.Nat8);\n  const bitcoin_get_block_headers_result = IDL.Record({\n    tip_height: bitcoin_block_height,\n    block_headers: IDL.Vec(bitcoin_block_header),\n  });\n  const bitcoin_get_current_fee_percentiles_args = IDL.Record({\n    network: bitcoin_network,\n  });\n  const millisatoshi_per_byte = IDL.Nat64;\n  const bitcoin_get_current_fee_percentiles_result = IDL.Vec(\n    millisatoshi_per_byte,\n  );\n  const bitcoin_get_utxos_args = IDL.Record({\n    network: bitcoin_network,\n    filter: IDL.Opt(\n      IDL.Variant({\n        page: IDL.Vec(IDL.Nat8),\n        min_confirmations: IDL.Nat32,\n      }),\n    ),\n    address: bitcoin_address,\n  });\n  const bitcoin_block_hash = IDL.Vec(IDL.Nat8);\n  const outpoint = IDL.Record({\n    txid: IDL.Vec(IDL.Nat8),\n    vout: IDL.Nat32,\n  });\n  const utxo = IDL.Record({\n    height: IDL.Nat32,\n    value: satoshi,\n    outpoint: outpoint,\n  });\n  const bitcoin_get_utxos_result = IDL.Record({\n    next_page: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    tip_height: bitcoin_block_height,\n    tip_block_hash: bitcoin_block_hash,\n    utxos: IDL.Vec(utxo),\n  });\n  const bitcoin_send_transaction_args = IDL.Record({\n    transaction: IDL.Vec(IDL.Nat8),\n    network: bitcoin_network,\n  });\n  const canister_id = IDL.Principal;\n  const canister_info_args = IDL.Record({\n    canister_id: canister_id,\n    num_requested_changes: IDL.Opt(IDL.Nat64),\n  });\n  const change_origin = IDL.Variant({\n    from_user: IDL.Record({ user_id: IDL.Principal }),\n    from_canister: IDL.Record({\n      canister_version: IDL.Opt(IDL.Nat64),\n      canister_id: IDL.Principal,\n    }),\n  });\n  const snapshot_id = IDL.Vec(IDL.Nat8);\n  const change_details = IDL.Variant({\n    creation: IDL.Record({\n      controllers: IDL.Vec(IDL.Principal),\n      environment_variables_hash: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    }),\n    code_deployment: IDL.Record({\n      mode: IDL.Variant({\n        reinstall: IDL.Null,\n        upgrade: IDL.Null,\n        install: IDL.Null,\n      }),\n      module_hash: IDL.Vec(IDL.Nat8),\n    }),\n    load_snapshot: IDL.Record({\n      canister_version: IDL.Nat64,\n      source: IDL.Variant({\n        metadata_upload: IDL.Reserved,\n        taken_from_canister: IDL.Reserved,\n      }),\n      from_canister_id: IDL.Opt(IDL.Principal),\n      taken_at_timestamp: IDL.Nat64,\n      snapshot_id: snapshot_id,\n    }),\n    controllers_change: IDL.Record({\n      controllers: IDL.Vec(IDL.Principal),\n    }),\n    code_uninstall: IDL.Null,\n  });\n  const change = IDL.Record({\n    timestamp_nanos: IDL.Nat64,\n    canister_version: IDL.Nat64,\n    origin: change_origin,\n    details: change_details,\n  });\n  const canister_info_result = IDL.Record({\n    controllers: IDL.Vec(IDL.Principal),\n    module_hash: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    recent_changes: IDL.Vec(change),\n    total_num_changes: IDL.Nat64,\n  });\n  const canister_metadata_args = IDL.Record({\n    name: IDL.Text,\n    canister_id: canister_id,\n  });\n  const canister_metadata_result = IDL.Record({ value: IDL.Vec(IDL.Nat8) });\n  const canister_status_args = IDL.Record({ canister_id: canister_id });\n  const environment_variable = IDL.Record({\n    value: IDL.Text,\n    name: IDL.Text,\n  });\n  const log_visibility = IDL.Variant({\n    controllers: IDL.Null,\n    public: IDL.Null,\n    allowed_viewers: IDL.Vec(IDL.Principal),\n  });\n  const definite_canister_settings = IDL.Record({\n    freezing_threshold: IDL.Nat,\n    wasm_memory_threshold: IDL.Nat,\n    environment_variables: IDL.Vec(environment_variable),\n    controllers: IDL.Vec(IDL.Principal),\n    reserved_cycles_limit: IDL.Nat,\n    log_visibility: log_visibility,\n    wasm_memory_limit: IDL.Nat,\n    memory_allocation: IDL.Nat,\n    compute_allocation: IDL.Nat,\n  });\n  const canister_status_result = IDL.Record({\n    memory_metrics: IDL.Record({\n      wasm_binary_size: IDL.Nat,\n      wasm_chunk_store_size: IDL.Nat,\n      canister_history_size: IDL.Nat,\n      stable_memory_size: IDL.Nat,\n      snapshots_size: IDL.Nat,\n      wasm_memory_size: IDL.Nat,\n      global_memory_size: IDL.Nat,\n      custom_sections_size: IDL.Nat,\n    }),\n    status: IDL.Variant({\n      stopped: IDL.Null,\n      stopping: IDL.Null,\n      running: IDL.Null,\n    }),\n    memory_size: IDL.Nat,\n    ready_for_migration: IDL.Bool,\n    version: IDL.Nat64,\n    cycles: IDL.Nat,\n    settings: definite_canister_settings,\n    query_stats: IDL.Record({\n      response_payload_bytes_total: IDL.Nat,\n      num_instructions_total: IDL.Nat,\n      num_calls_total: IDL.Nat,\n      request_payload_bytes_total: IDL.Nat,\n    }),\n    idle_cycles_burned_per_day: IDL.Nat,\n    module_hash: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    reserved_cycles: IDL.Nat,\n  });\n  const clear_chunk_store_args = IDL.Record({ canister_id: canister_id });\n  const canister_settings = IDL.Record({\n    freezing_threshold: IDL.Opt(IDL.Nat),\n    wasm_memory_threshold: IDL.Opt(IDL.Nat),\n    environment_variables: IDL.Opt(IDL.Vec(environment_variable)),\n    controllers: IDL.Opt(IDL.Vec(IDL.Principal)),\n    reserved_cycles_limit: IDL.Opt(IDL.Nat),\n    log_visibility: IDL.Opt(log_visibility),\n    wasm_memory_limit: IDL.Opt(IDL.Nat),\n    memory_allocation: IDL.Opt(IDL.Nat),\n    compute_allocation: IDL.Opt(IDL.Nat),\n  });\n  const create_canister_args = IDL.Record({\n    settings: IDL.Opt(canister_settings),\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const create_canister_result = IDL.Record({ canister_id: canister_id });\n  const delete_canister_args = IDL.Record({ canister_id: canister_id });\n  const delete_canister_snapshot_args = IDL.Record({\n    canister_id: canister_id,\n    snapshot_id: snapshot_id,\n  });\n  const deposit_cycles_args = IDL.Record({ canister_id: canister_id });\n  const ecdsa_curve = IDL.Variant({ secp256k1: IDL.Null });\n  const ecdsa_public_key_args = IDL.Record({\n    key_id: IDL.Record({ name: IDL.Text, curve: ecdsa_curve }),\n    canister_id: IDL.Opt(canister_id),\n    derivation_path: IDL.Vec(IDL.Vec(IDL.Nat8)),\n  });\n  const ecdsa_public_key_result = IDL.Record({\n    public_key: IDL.Vec(IDL.Nat8),\n    chain_code: IDL.Vec(IDL.Nat8),\n  });\n  const fetch_canister_logs_args = IDL.Record({ canister_id: canister_id });\n  const canister_log_record = IDL.Record({\n    idx: IDL.Nat64,\n    timestamp_nanos: IDL.Nat64,\n    content: IDL.Vec(IDL.Nat8),\n  });\n  const fetch_canister_logs_result = IDL.Record({\n    canister_log_records: IDL.Vec(canister_log_record),\n  });\n  const http_header = IDL.Record({ value: IDL.Text, name: IDL.Text });\n  const http_request_result = IDL.Record({\n    status: IDL.Nat,\n    body: IDL.Vec(IDL.Nat8),\n    headers: IDL.Vec(http_header),\n  });\n  const http_request_args = IDL.Record({\n    url: IDL.Text,\n    method: IDL.Variant({\n      get: IDL.Null,\n      head: IDL.Null,\n      post: IDL.Null,\n    }),\n    max_response_bytes: IDL.Opt(IDL.Nat64),\n    body: IDL.Opt(IDL.Vec(IDL.Nat8)),\n    transform: IDL.Opt(\n      IDL.Record({\n        function: IDL.Func(\n          [\n            IDL.Record({\n              context: IDL.Vec(IDL.Nat8),\n              response: http_request_result,\n            }),\n          ],\n          [http_request_result],\n          [\"query\"],\n        ),\n        context: IDL.Vec(IDL.Nat8),\n      }),\n    ),\n    headers: IDL.Vec(http_header),\n    is_replicated: IDL.Opt(IDL.Bool),\n  });\n  const canister_install_mode = IDL.Variant({\n    reinstall: IDL.Null,\n    upgrade: IDL.Opt(\n      IDL.Record({\n        wasm_memory_persistence: IDL.Opt(\n          IDL.Variant({ keep: IDL.Null, replace: IDL.Null }),\n        ),\n        skip_pre_upgrade: IDL.Opt(IDL.Bool),\n      }),\n    ),\n    install: IDL.Null,\n  });\n  const chunk_hash = IDL.Record({ hash: IDL.Vec(IDL.Nat8) });\n  const install_chunked_code_args = IDL.Record({\n    arg: IDL.Vec(IDL.Nat8),\n    wasm_module_hash: IDL.Vec(IDL.Nat8),\n    mode: canister_install_mode,\n    chunk_hashes_list: IDL.Vec(chunk_hash),\n    target_canister: canister_id,\n    store_canister: IDL.Opt(canister_id),\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const wasm_module = IDL.Vec(IDL.Nat8);\n  const install_code_args = IDL.Record({\n    arg: IDL.Vec(IDL.Nat8),\n    wasm_module: wasm_module,\n    mode: canister_install_mode,\n    canister_id: canister_id,\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const list_canister_snapshots_args = IDL.Record({\n    canister_id: canister_id,\n  });\n  const snapshot = IDL.Record({\n    id: snapshot_id,\n    total_size: IDL.Nat64,\n    taken_at_timestamp: IDL.Nat64,\n  });\n  const list_canister_snapshots_result = IDL.Vec(snapshot);\n  const load_canister_snapshot_args = IDL.Record({\n    canister_id: canister_id,\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n    snapshot_id: snapshot_id,\n  });\n  const node_metrics_history_args = IDL.Record({\n    start_at_timestamp_nanos: IDL.Nat64,\n    subnet_id: IDL.Principal,\n  });\n  const node_metrics = IDL.Record({\n    num_block_failures_total: IDL.Nat64,\n    node_id: IDL.Principal,\n    num_blocks_proposed_total: IDL.Nat64,\n  });\n  const node_metrics_history_result = IDL.Vec(\n    IDL.Record({\n      timestamp_nanos: IDL.Nat64,\n      node_metrics: IDL.Vec(node_metrics),\n    }),\n  );\n  const provisional_create_canister_with_cycles_args = IDL.Record({\n    settings: IDL.Opt(canister_settings),\n    specified_id: IDL.Opt(canister_id),\n    amount: IDL.Opt(IDL.Nat),\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const provisional_create_canister_with_cycles_result = IDL.Record({\n    canister_id: canister_id,\n  });\n  const provisional_top_up_canister_args = IDL.Record({\n    canister_id: canister_id,\n    amount: IDL.Nat,\n  });\n  const raw_rand_result = IDL.Vec(IDL.Nat8);\n  const read_canister_snapshot_data_args = IDL.Record({\n    kind: IDL.Variant({\n      wasm_module: IDL.Record({ size: IDL.Nat64, offset: IDL.Nat64 }),\n      wasm_memory: IDL.Record({ size: IDL.Nat64, offset: IDL.Nat64 }),\n      stable_memory: IDL.Record({\n        size: IDL.Nat64,\n        offset: IDL.Nat64,\n      }),\n      wasm_chunk: IDL.Record({ hash: IDL.Vec(IDL.Nat8) }),\n    }),\n    canister_id: canister_id,\n    snapshot_id: snapshot_id,\n  });\n  const read_canister_snapshot_data_response = IDL.Record({\n    chunk: IDL.Vec(IDL.Nat8),\n  });\n  const read_canister_snapshot_metadata_args = IDL.Record({\n    canister_id: canister_id,\n    snapshot_id: snapshot_id,\n  });\n  const read_canister_snapshot_metadata_response = IDL.Record({\n    globals: IDL.Vec(\n      IDL.Variant({\n        f32: IDL.Float32,\n        f64: IDL.Float64,\n        i32: IDL.Int32,\n        i64: IDL.Int64,\n        v128: IDL.Nat,\n      }),\n    ),\n    canister_version: IDL.Nat64,\n    source: IDL.Variant({\n      metadata_upload: IDL.Reserved,\n      taken_from_canister: IDL.Reserved,\n    }),\n    certified_data: IDL.Vec(IDL.Nat8),\n    global_timer: IDL.Opt(\n      IDL.Variant({ active: IDL.Nat64, inactive: IDL.Null }),\n    ),\n    on_low_wasm_memory_hook_status: IDL.Opt(\n      IDL.Variant({\n        condition_not_satisfied: IDL.Null,\n        executed: IDL.Null,\n        ready: IDL.Null,\n      }),\n    ),\n    wasm_module_size: IDL.Nat64,\n    stable_memory_size: IDL.Nat64,\n    wasm_chunk_store: IDL.Vec(IDL.Record({ hash: IDL.Vec(IDL.Nat8) })),\n    taken_at_timestamp: IDL.Nat64,\n    wasm_memory_size: IDL.Nat64,\n  });\n  const schnorr_algorithm = IDL.Variant({\n    ed25519: IDL.Null,\n    bip340secp256k1: IDL.Null,\n  });\n  const schnorr_public_key_args = IDL.Record({\n    key_id: IDL.Record({\n      algorithm: schnorr_algorithm,\n      name: IDL.Text,\n    }),\n    canister_id: IDL.Opt(canister_id),\n    derivation_path: IDL.Vec(IDL.Vec(IDL.Nat8)),\n  });\n  const schnorr_public_key_result = IDL.Record({\n    public_key: IDL.Vec(IDL.Nat8),\n    chain_code: IDL.Vec(IDL.Nat8),\n  });\n  const sign_with_ecdsa_args = IDL.Record({\n    key_id: IDL.Record({ name: IDL.Text, curve: ecdsa_curve }),\n    derivation_path: IDL.Vec(IDL.Vec(IDL.Nat8)),\n    message_hash: IDL.Vec(IDL.Nat8),\n  });\n  const sign_with_ecdsa_result = IDL.Record({\n    signature: IDL.Vec(IDL.Nat8),\n  });\n  const schnorr_aux = IDL.Variant({\n    bip341: IDL.Record({ merkle_root_hash: IDL.Vec(IDL.Nat8) }),\n  });\n  const sign_with_schnorr_args = IDL.Record({\n    aux: IDL.Opt(schnorr_aux),\n    key_id: IDL.Record({\n      algorithm: schnorr_algorithm,\n      name: IDL.Text,\n    }),\n    derivation_path: IDL.Vec(IDL.Vec(IDL.Nat8)),\n    message: IDL.Vec(IDL.Nat8),\n  });\n  const sign_with_schnorr_result = IDL.Record({\n    signature: IDL.Vec(IDL.Nat8),\n  });\n  const start_canister_args = IDL.Record({ canister_id: canister_id });\n  const stop_canister_args = IDL.Record({ canister_id: canister_id });\n  const stored_chunks_args = IDL.Record({ canister_id: canister_id });\n  const stored_chunks_result = IDL.Vec(chunk_hash);\n  const subnet_info_args = IDL.Record({ subnet_id: IDL.Principal });\n  const subnet_info_result = IDL.Record({\n    replica_version: IDL.Text,\n    registry_version: IDL.Nat64,\n  });\n  const take_canister_snapshot_args = IDL.Record({\n    replace_snapshot: IDL.Opt(snapshot_id),\n    canister_id: canister_id,\n  });\n  const take_canister_snapshot_result = snapshot;\n  const uninstall_code_args = IDL.Record({\n    canister_id: canister_id,\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const update_settings_args = IDL.Record({\n    canister_id: IDL.Principal,\n    settings: canister_settings,\n    sender_canister_version: IDL.Opt(IDL.Nat64),\n  });\n  const upload_canister_snapshot_data_args = IDL.Record({\n    chunk: IDL.Vec(IDL.Nat8),\n    kind: IDL.Variant({\n      wasm_module: IDL.Record({ offset: IDL.Nat64 }),\n      wasm_memory: IDL.Record({ offset: IDL.Nat64 }),\n      stable_memory: IDL.Record({ offset: IDL.Nat64 }),\n      wasm_chunk: IDL.Null,\n    }),\n    canister_id: canister_id,\n    snapshot_id: snapshot_id,\n  });\n  const upload_canister_snapshot_metadata_args = IDL.Record({\n    globals: IDL.Vec(\n      IDL.Variant({\n        f32: IDL.Float32,\n        f64: IDL.Float64,\n        i32: IDL.Int32,\n        i64: IDL.Int64,\n        v128: IDL.Nat,\n      }),\n    ),\n    replace_snapshot: IDL.Opt(snapshot_id),\n    certified_data: IDL.Vec(IDL.Nat8),\n    global_timer: IDL.Opt(\n      IDL.Variant({ active: IDL.Nat64, inactive: IDL.Null }),\n    ),\n    on_low_wasm_memory_hook_status: IDL.Opt(\n      IDL.Variant({\n        condition_not_satisfied: IDL.Null,\n        executed: IDL.Null,\n        ready: IDL.Null,\n      }),\n    ),\n    wasm_module_size: IDL.Nat64,\n    canister_id: canister_id,\n    stable_memory_size: IDL.Nat64,\n    wasm_memory_size: IDL.Nat64,\n  });\n  const upload_canister_snapshot_metadata_response = IDL.Record({\n    snapshot_id: snapshot_id,\n  });\n  const upload_chunk_args = IDL.Record({\n    chunk: IDL.Vec(IDL.Nat8),\n    canister_id: IDL.Principal,\n  });\n  const upload_chunk_result = chunk_hash;\n  const vetkd_curve = IDL.Variant({ bls12_381_g2: IDL.Null });\n  const vetkd_derive_key_args = IDL.Record({\n    context: IDL.Vec(IDL.Nat8),\n    key_id: IDL.Record({ name: IDL.Text, curve: vetkd_curve }),\n    input: IDL.Vec(IDL.Nat8),\n    transport_public_key: IDL.Vec(IDL.Nat8),\n  });\n  const vetkd_derive_key_result = IDL.Record({\n    encrypted_key: IDL.Vec(IDL.Nat8),\n  });\n  const vetkd_public_key_args = IDL.Record({\n    context: IDL.Vec(IDL.Nat8),\n    key_id: IDL.Record({ name: IDL.Text, curve: vetkd_curve }),\n    canister_id: IDL.Opt(canister_id),\n  });\n  const vetkd_public_key_result = IDL.Record({\n    public_key: IDL.Vec(IDL.Nat8),\n  });\n\n  return IDL.Service({\n    bitcoin_get_balance: IDL.Func(\n      [bitcoin_get_balance_args],\n      [bitcoin_get_balance_result],\n      [],\n    ),\n    bitcoin_get_block_headers: IDL.Func(\n      [bitcoin_get_block_headers_args],\n      [bitcoin_get_block_headers_result],\n      [],\n    ),\n    bitcoin_get_current_fee_percentiles: IDL.Func(\n      [bitcoin_get_current_fee_percentiles_args],\n      [bitcoin_get_current_fee_percentiles_result],\n      [],\n    ),\n    bitcoin_get_utxos: IDL.Func(\n      [bitcoin_get_utxos_args],\n      [bitcoin_get_utxos_result],\n      [],\n    ),\n    bitcoin_send_transaction: IDL.Func([bitcoin_send_transaction_args], [], []),\n    canister_info: IDL.Func([canister_info_args], [canister_info_result], []),\n    canister_metadata: IDL.Func(\n      [canister_metadata_args],\n      [canister_metadata_result],\n      [],\n    ),\n    canister_status: IDL.Func(\n      [canister_status_args],\n      [canister_status_result],\n      [\"query\"],\n    ),\n    clear_chunk_store: IDL.Func([clear_chunk_store_args], [], []),\n    create_canister: IDL.Func(\n      [create_canister_args],\n      [create_canister_result],\n      [],\n    ),\n    delete_canister: IDL.Func([delete_canister_args], [], []),\n    delete_canister_snapshot: IDL.Func([delete_canister_snapshot_args], [], []),\n    deposit_cycles: IDL.Func([deposit_cycles_args], [], []),\n    ecdsa_public_key: IDL.Func(\n      [ecdsa_public_key_args],\n      [ecdsa_public_key_result],\n      [],\n    ),\n    fetch_canister_logs: IDL.Func(\n      [fetch_canister_logs_args],\n      [fetch_canister_logs_result],\n      [\"query\"],\n    ),\n    http_request: IDL.Func([http_request_args], [http_request_result], []),\n    install_chunked_code: IDL.Func([install_chunked_code_args], [], []),\n    install_code: IDL.Func([install_code_args], [], []),\n    list_canister_snapshots: IDL.Func(\n      [list_canister_snapshots_args],\n      [list_canister_snapshots_result],\n      [],\n    ),\n    load_canister_snapshot: IDL.Func([load_canister_snapshot_args], [], []),\n    node_metrics_history: IDL.Func(\n      [node_metrics_history_args],\n      [node_metrics_history_result],\n      [],\n    ),\n    provisional_create_canister_with_cycles: IDL.Func(\n      [provisional_create_canister_with_cycles_args],\n      [provisional_create_canister_with_cycles_result],\n      [],\n    ),\n    provisional_top_up_canister: IDL.Func(\n      [provisional_top_up_canister_args],\n      [],\n      [],\n    ),\n    raw_rand: IDL.Func([], [raw_rand_result], []),\n    read_canister_snapshot_data: IDL.Func(\n      [read_canister_snapshot_data_args],\n      [read_canister_snapshot_data_response],\n      [],\n    ),\n    read_canister_snapshot_metadata: IDL.Func(\n      [read_canister_snapshot_metadata_args],\n      [read_canister_snapshot_metadata_response],\n      [],\n    ),\n    schnorr_public_key: IDL.Func(\n      [schnorr_public_key_args],\n      [schnorr_public_key_result],\n      [],\n    ),\n    sign_with_ecdsa: IDL.Func(\n      [sign_with_ecdsa_args],\n      [sign_with_ecdsa_result],\n      [],\n    ),\n    sign_with_schnorr: IDL.Func(\n      [sign_with_schnorr_args],\n      [sign_with_schnorr_result],\n      [],\n    ),\n    start_canister: IDL.Func([start_canister_args], [], []),\n    stop_canister: IDL.Func([stop_canister_args], [], []),\n    stored_chunks: IDL.Func([stored_chunks_args], [stored_chunks_result], []),\n    subnet_info: IDL.Func([subnet_info_args], [subnet_info_result], []),\n    take_canister_snapshot: IDL.Func(\n      [take_canister_snapshot_args],\n      [take_canister_snapshot_result],\n      [],\n    ),\n    uninstall_code: IDL.Func([uninstall_code_args], [], []),\n    update_settings: IDL.Func([update_settings_args], [], []),\n    upload_canister_snapshot_data: IDL.Func(\n      [upload_canister_snapshot_data_args],\n      [],\n      [],\n    ),\n    upload_canister_snapshot_metadata: IDL.Func(\n      [upload_canister_snapshot_metadata_args],\n      [upload_canister_snapshot_metadata_response],\n      [],\n    ),\n    upload_chunk: IDL.Func([upload_chunk_args], [upload_chunk_result], []),\n    vetkd_derive_key: IDL.Func(\n      [vetkd_derive_key_args],\n      [vetkd_derive_key_result],\n      [],\n    ),\n    vetkd_public_key: IDL.Func(\n      [vetkd_public_key_args],\n      [vetkd_public_key_result],\n      [],\n    ),\n  });\n};\n\nexport const init = ({ IDL }) => {\n  return [];\n};\n", "import { isNullish, toNullable } from \"@dfinity/utils\";\nimport { Principal } from \"@icp-sdk/core/principal\";\nimport type {\n  canister_install_mode,\n  canister_settings,\n  chunk_hash,\n  environment_variable,\n  log_visibility,\n  upload_chunk_args,\n} from \"../candid/ic-management\";\n\nexport enum LogVisibility {\n  Controllers,\n  Public,\n}\n\nexport interface CanisterSettings {\n  controllers?: string[];\n  freezingThreshold?: bigint;\n  memoryAllocation?: bigint;\n  computeAllocation?: bigint;\n  reservedCyclesLimit?: bigint;\n  logVisibility?: LogVisibility;\n  wasmMemoryLimit?: bigint;\n  wasmMemoryThreshold?: bigint;\n  environmentVariables?: environment_variable[];\n}\n\nexport class UnsupportedLogVisibility extends Error {}\n\nexport const toCanisterSettings = ({\n  controllers,\n  freezingThreshold,\n  memoryAllocation,\n  computeAllocation,\n  reservedCyclesLimit,\n  logVisibility,\n  wasmMemoryLimit,\n  wasmMemoryThreshold,\n  environmentVariables,\n}: CanisterSettings = {}): canister_settings => {\n  const toLogVisibility = (): log_visibility => {\n    switch (logVisibility) {\n      case LogVisibility.Controllers:\n        return { controllers: null };\n      case LogVisibility.Public:\n        return { public: null };\n      default:\n        throw new UnsupportedLogVisibility();\n    }\n  };\n\n  return {\n    controllers: toNullable(controllers?.map((c) => Principal.fromText(c))),\n    freezing_threshold: toNullable(freezingThreshold),\n    memory_allocation: toNullable(memoryAllocation),\n    compute_allocation: toNullable(computeAllocation),\n    reserved_cycles_limit: toNullable(reservedCyclesLimit),\n    log_visibility: isNullish(logVisibility) ? [] : [toLogVisibility()],\n    wasm_memory_limit: toNullable(wasmMemoryLimit),\n    wasm_memory_threshold: toNullable(wasmMemoryThreshold),\n    environment_variables: toNullable(environmentVariables),\n  };\n};\n\nexport interface CreateCanisterParams {\n  settings?: CanisterSettings;\n  senderCanisterVersion?: bigint;\n}\n\nexport interface UpdateSettingsParams {\n  canisterId: Principal;\n  senderCanisterVersion?: bigint;\n  settings: CanisterSettings;\n}\n\nexport interface InstallCodeParams {\n  mode: canister_install_mode;\n  canisterId: Principal;\n  wasmModule: Uint8Array;\n  arg: Uint8Array;\n  senderCanisterVersion?: bigint;\n}\n\nexport interface UploadChunkParams extends Pick<upload_chunk_args, \"chunk\"> {\n  canisterId: Principal;\n}\n\nexport interface ClearChunkStoreParams {\n  canisterId: Principal;\n}\n\nexport interface StoredChunksParams {\n  canisterId: Principal;\n}\n\nexport interface InstallChunkedCodeParams\n  extends Omit<InstallCodeParams, \"canisterId\" | \"wasmModule\"> {\n  chunkHashesList: Array<chunk_hash>;\n  targetCanisterId: Principal;\n  storeCanisterId?: Principal;\n  wasmModuleHash: string | Uint8Array | number[];\n}\n\nexport interface UninstallCodeParams {\n  canisterId: Principal;\n  senderCanisterVersion?: bigint;\n}\n\nexport interface ProvisionalCreateCanisterWithCyclesParams {\n  amount?: bigint;\n  settings?: CanisterSettings;\n  canisterId?: Principal;\n}\n", "import { assertNever, isNullish, nonNullish, toNullable } from \"@dfinity/utils\";\nimport type { Principal } from \"@icp-sdk/core/principal\";\nimport type {\n  canister_id,\n  read_canister_snapshot_data_args,\n  snapshot_id,\n  take_canister_snapshot_args,\n  upload_canister_snapshot_data_args,\n  upload_canister_snapshot_metadata_args,\n} from \"../candid/ic-management\";\nimport { mapSnapshotId } from \"../utils/ic-management.utils\";\nimport type { ReadCanisterSnapshotMetadataResponse } from \"./snapshot.responses\";\n\nexport type SnapshotIdText = string;\n\nexport interface OptionSnapshotParams {\n  canisterId: Principal;\n  snapshotId?: SnapshotIdText | snapshot_id;\n}\n\nexport type SnapshotParams = Required<OptionSnapshotParams>;\n\nexport const toSnapshotArgs = ({\n  canisterId: canister_id,\n  snapshotId,\n}: SnapshotParams): { canister_id: canister_id; snapshot_id: snapshot_id } => ({\n  canister_id,\n  snapshot_id: mapSnapshotId(snapshotId),\n});\n\nexport const toReplaceSnapshotArgs = ({\n  canisterId: canister_id,\n  snapshotId,\n}: OptionSnapshotParams): take_canister_snapshot_args => ({\n  canister_id,\n  replace_snapshot: toNullable(\n    nonNullish(snapshotId) ? mapSnapshotId(snapshotId) : undefined,\n  ),\n});\n\nexport type CanisterSnapshotMetadataKind =\n  | { wasmModule: { size: bigint; offset: bigint } }\n  | { wasmMemory: { size: bigint; offset: bigint } }\n  | { stableMemory: { size: bigint; offset: bigint } }\n  | { wasmChunk: { hash: Uint8Array | number[] } };\n\nexport interface ReadCanisterSnapshotDataParams extends SnapshotParams {\n  kind: CanisterSnapshotMetadataKind;\n}\n\nexport const toCanisterSnapshotMetadataKind = (\n  kind: CanisterSnapshotMetadataKind,\n): read_canister_snapshot_data_args[\"kind\"] => {\n  if (\"wasmModule\" in kind) {\n    return { wasm_module: kind.wasmModule };\n  }\n\n  if (\"wasmMemory\" in kind) {\n    return { wasm_memory: kind.wasmMemory };\n  }\n\n  if (\"stableMemory\" in kind) {\n    return { stable_memory: kind.stableMemory };\n  }\n\n  if (\"wasmChunk\" in kind) {\n    return { wasm_chunk: kind.wasmChunk };\n  }\n\n  assertNever(kind, \"Unsupported snapshot metadata kind\");\n};\n\nexport type UploadCanisterSnapshotMetadataParam = Pick<\n  ReadCanisterSnapshotMetadataResponse,\n  | \"globals\"\n  | \"certifiedData\"\n  | \"globalTimer\"\n  | \"onLowWasmMemoryHookStatus\"\n  | \"wasmModuleSize\"\n  | \"stableMemorySize\"\n  | \"wasmMemorySize\"\n>;\n\nexport interface UploadCanisterSnapshotMetadataParams\n  extends OptionSnapshotParams {\n  metadata: UploadCanisterSnapshotMetadataParam;\n}\n\nexport const toUploadCanisterSnapshotMetadata = ({\n  globals,\n  certifiedData: certified_data,\n  globalTimer,\n  onLowWasmMemoryHookStatus,\n  wasmModuleSize: wasm_module_size,\n  stableMemorySize: stable_memory_size,\n  wasmMemorySize: wasm_memory_size,\n}: UploadCanisterSnapshotMetadataParam): Omit<\n  upload_canister_snapshot_metadata_args,\n  \"canister_id\" | \"replace_snapshot\"\n> => {\n  const mapOnLowWasmMemoryHookStatus =\n    (): upload_canister_snapshot_metadata_args[\"on_low_wasm_memory_hook_status\"] => {\n      if (isNullish(onLowWasmMemoryHookStatus)) {\n        return toNullable();\n      }\n\n      if (\"conditionNotSatisfied\" in onLowWasmMemoryHookStatus) {\n        return toNullable({\n          condition_not_satisfied:\n            onLowWasmMemoryHookStatus.conditionNotSatisfied,\n        });\n      }\n\n      return toNullable(onLowWasmMemoryHookStatus);\n    };\n\n  return {\n    globals,\n    certified_data,\n    global_timer: toNullable(globalTimer),\n    on_low_wasm_memory_hook_status: mapOnLowWasmMemoryHookStatus(),\n    wasm_module_size,\n    stable_memory_size,\n    wasm_memory_size,\n  };\n};\n\nexport type UploadCanisterSnapshotDataKind =\n  | { wasmModule: { offset: bigint } }\n  | { wasmMemory: { offset: bigint } }\n  | { stableMemory: { offset: bigint } }\n  | { wasmChunk: null };\n\nexport interface ReadCanisterSnapshotMetadataParams extends SnapshotParams {\n  kind: CanisterSnapshotMetadataKind;\n}\n\nexport interface UploadCanisterSnapshotDataParams extends SnapshotParams {\n  chunk: Uint8Array | number[];\n  kind: UploadCanisterSnapshotDataKind;\n}\n\nexport const toUploadCanisterSnapshotDataKind = (\n  kind: UploadCanisterSnapshotDataKind,\n): upload_canister_snapshot_data_args[\"kind\"] => {\n  if (\"wasmModule\" in kind) {\n    return { wasm_module: kind.wasmModule };\n  }\n\n  if (\"wasmMemory\" in kind) {\n    return { wasm_memory: kind.wasmMemory };\n  }\n\n  if (\"stableMemory\" in kind) {\n    return { stable_memory: kind.stableMemory };\n  }\n\n  if (\"wasmChunk\" in kind) {\n    return { wasm_chunk: null };\n  }\n\n  assertNever(kind, \"Unsupported snapshot data kind\");\n};\n", "import { hexStringToUint8Array, uint8ArrayToHexString } from \"@dfinity/utils\";\nimport type { snapshot_id } from \"../candid/ic-management\";\nimport type { SnapshotIdText } from \"../types/snapshot.params\";\n\n/**\n * Encodes a snapshot ID into a hex string representation.\n *\n * A snapshot ID is a tuple `(CanisterId, u64)`, where:\n * - `CanisterId` is a unique identifier for a canister.\n * - `u64` is a subnet-local number (incremented for each new snapshot).\n *\n * @param {snapshot_id} snapshotId - The snapshot ID to encode, represented as a `Uint8Array` or an array of numbers.\n * @returns {string} The hex string representation of the snapshot ID.\n */\nexport const encodeSnapshotId = (snapshotId: snapshot_id): SnapshotIdText =>\n  uint8ArrayToHexString(snapshotId);\n\n/**\n * Decodes a hex string representation of a snapshot ID back into its original format.\n *\n * A snapshot ID is a tuple `(CanisterId, u64)`, where:\n * - `CanisterId` is a unique identifier for a canister.\n * - `u64` is a subnet-local number (incremented for each new snapshot).\n *\n * @param {string} snapshotId - The hex string representation of the snapshot ID.\n * @returns {snapshot_id} The decoded snapshot ID as a `Uint8Array`.\n */\nexport const decodeSnapshotId = (snapshotId: SnapshotIdText): snapshot_id =>\n  hexStringToUint8Array(snapshotId);\n\n/**\n * Maps a snapshot ID to the appropriate format for the IC interface.\n *\n * @param {SnapshotIdText | snapshot_id} snapshotId - The snapshot ID to map.\n * It can either be a `string` (SnapshotIdText) or a `Uint8Array | number[]` (snapshot_id).\n * If a `string` is provided, it is decoded into a `Uint8Array` using `decodeSnapshotId`.\n *\n * @returns {Uint8Array | number[]} The mapped snapshot ID.\n */\nexport const mapSnapshotId = (\n  snapshotId: SnapshotIdText | snapshot_id,\n): snapshot_id =>\n  typeof snapshotId === \"string\" ? decodeSnapshotId(snapshotId) : snapshotId;\n", "import { assertNever, fromNullable, isNullish } from \"@dfinity/utils\";\nimport type { read_canister_snapshot_metadata_response } from \"../candid/ic-management\";\n\nexport interface ReadCanisterSnapshotMetadataResponse {\n  globals: (\n    | { f32: number }\n    | { f64: number }\n    | { i32: number }\n    | { i64: bigint }\n    | { v128: bigint }\n  )[];\n  canisterVersion: bigint;\n  source: { metadataUpload: unknown } | { takenFromCanister: unknown };\n  certifiedData: Uint8Array | number[];\n  globalTimer?: { active: bigint } | { inactive: null };\n  onLowWasmMemoryHookStatus?:\n    | { conditionNotSatisfied: null }\n    | { executed: null }\n    | { ready: null };\n  wasmModuleSize: bigint;\n  stableMemorySize: bigint;\n  wasmChunkStore: Array<{ hash: Uint8Array | number[] }>;\n  takenAtTimestamp: bigint;\n  wasmMemorySize: bigint;\n}\n\nexport const fromReadCanisterSnapshotMetadataResponse = ({\n  globals,\n  canister_version: canisterVersion,\n  source,\n  certified_data: certifiedData,\n  global_timer,\n  on_low_wasm_memory_hook_status,\n  wasm_module_size: wasmModuleSize,\n  stable_memory_size: stableMemorySize,\n  wasm_chunk_store: wasmChunkStore,\n  taken_at_timestamp: takenAtTimestamp,\n  wasm_memory_size: wasmMemorySize,\n}: read_canister_snapshot_metadata_response): ReadCanisterSnapshotMetadataResponse => {\n  const mapSource = (): ReadCanisterSnapshotMetadataResponse[\"source\"] => {\n    if (\"metadata_upload\" in source) {\n      return { metadataUpload: source.metadata_upload };\n    }\n\n    if (\"taken_from_canister\" in source) {\n      return { takenFromCanister: source.taken_from_canister };\n    }\n\n    assertNever(source, \"Unsupported snapshot metadata source\");\n  };\n\n  const mapOnLowWasmMemoryHookStatus =\n    (): ReadCanisterSnapshotMetadataResponse[\"onLowWasmMemoryHookStatus\"] => {\n      const value = fromNullable(on_low_wasm_memory_hook_status);\n\n      if (isNullish(value)) {\n        return undefined;\n      }\n\n      if (\"condition_not_satisfied\" in value) {\n        return { conditionNotSatisfied: value.condition_not_satisfied };\n      }\n\n      if (\"executed\" in value) {\n        return { executed: value.executed };\n      }\n\n      if (\"ready\" in value) {\n        return { ready: value.ready };\n      }\n\n      assertNever(\n        value,\n        \"Unsupported snapshot metadata on_low_wasm_memory_hook_status\",\n      );\n    };\n\n  return {\n    globals,\n    canisterVersion,\n    source: mapSource(),\n    certifiedData,\n    globalTimer: fromNullable(global_timer),\n    onLowWasmMemoryHookStatus: mapOnLowWasmMemoryHookStatus(),\n    wasmModuleSize,\n    stableMemorySize,\n    wasmChunkStore,\n    takenAtTimestamp,\n    wasmMemorySize,\n  };\n};\n", "import { fromNullable, nonNullish } from \"@dfinity/utils\";\nimport type { ActorConfig, CallConfig } from \"@icp-sdk/core/agent\";\nimport { Principal } from \"@icp-sdk/core/principal\";\n\ntype CallTransform = Required<ActorConfig>[\"callTransform\"];\n\ntype QueryTransform = Required<ActorConfig>[\"queryTransform\"];\n\n/**\n * Transformer function for service creation with `callTransform` or `queryTransform`.\n *\n * This function maps the `effective_canister_id` for calls to the Management Canister (`aaaaa-aa`).\n *\n * Original source `getManagementCanister` in agent-js.\n *\n * Providing a transformer is required to determine the effective_canister_id when the request is an update call to the Management Canister (aaaaa-aa).\n *\n * @link https://internetcomputer.org/docs/current/references/ic-interface-spec/#http-effective-canister-id\n **/\n// eslint-disable-next-line local-rules/prefer-object-params\nexport const transform: CallTransform | QueryTransform = (\n  methodName: string,\n  args: (Record<string, unknown> & {\n    canister_id?: unknown;\n    target_canister?: unknown;\n    specified_id?: [] | [unknown];\n  })[],\n  _callConfig: CallConfig,\n): { effectiveCanisterId: Principal } => {\n  const [first] = args;\n\n  if (nonNullish(first) && typeof first === \"object\") {\n    if (\n      methodName === \"install_chunked_code\" &&\n      nonNullish(first.target_canister)\n    ) {\n      return { effectiveCanisterId: Principal.from(first.target_canister) };\n    }\n\n    if (\n      methodName === \"provisional_create_canister_with_cycles\" &&\n      nonNullish(first.specified_id)\n    ) {\n      const specifiedId = fromNullable(first.specified_id);\n\n      if (nonNullish(specifiedId)) {\n        return {\n          effectiveCanisterId: Principal.from(specifiedId),\n        };\n      }\n    }\n\n    if (nonNullish(first.canister_id)) {\n      return { effectiveCanisterId: Principal.from(first.canister_id) };\n    }\n  }\n\n  return { effectiveCanisterId: Principal.fromHex(\"\") };\n};\n"],
  "mappings": "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",
  "names": ["createServices", "hexStringToUint8Array", "toNullable", "Principal", "idlFactory", "IDL", "bitcoin_network", "bitcoin_address", "bitcoin_get_balance_args", "satoshi", "bitcoin_get_balance_result", "bitcoin_block_height", "bitcoin_get_block_headers_args", "bitcoin_block_header", "bitcoin_get_block_headers_result", "bitcoin_get_current_fee_percentiles_args", "millisatoshi_per_byte", "bitcoin_get_current_fee_percentiles_result", "bitcoin_get_utxos_args", "bitcoin_block_hash", "outpoint", "utxo", "bitcoin_get_utxos_result", "bitcoin_send_transaction_args", "canister_id", "canister_info_args", "change_origin", "snapshot_id", "change_details", "change", "canister_info_result", "canister_metadata_args", "canister_metadata_result", "canister_status_args", "environment_variable", "log_visibility", "definite_canister_settings", "canister_status_result", "clear_chunk_store_args", "canister_settings", "create_canister_args", "create_canister_result", "delete_canister_args", "delete_canister_snapshot_args", "deposit_cycles_args", "ecdsa_curve", "ecdsa_public_key_args", "ecdsa_public_key_result", "fetch_canister_logs_args", "canister_log_record", "fetch_canister_logs_result", "http_header", "http_request_result", "http_request_args", "canister_install_mode", "chunk_hash", "install_chunked_code_args", "wasm_module", "install_code_args", "list_canister_snapshots_args", "snapshot", "list_canister_snapshots_result", "load_canister_snapshot_args", "node_metrics_history_args", "node_metrics", "node_metrics_history_result", "provisional_create_canister_with_cycles_args", "provisional_create_canister_with_cycles_result", "provisional_top_up_canister_args", "raw_rand_result", "read_canister_snapshot_data_args", "read_canister_snapshot_data_response", "read_canister_snapshot_metadata_args", "read_canister_snapshot_metadata_response", "schnorr_algorithm", "schnorr_public_key_args", "schnorr_public_key_result", "sign_with_ecdsa_args", "sign_with_ecdsa_result", "schnorr_aux", "sign_with_schnorr_args", "sign_with_schnorr_result", "start_canister_args", "stop_canister_args", "stored_chunks_args", "stored_chunks_result", "subnet_info_args", "subnet_info_result", "take_canister_snapshot_args", "take_canister_snapshot_result", "uninstall_code_args", "update_settings_args", "upload_canister_snapshot_data_args", "upload_canister_snapshot_metadata_args", "upload_canister_snapshot_metadata_response", "upload_chunk_args", "upload_chunk_result", "vetkd_curve", "vetkd_derive_key_args", "vetkd_derive_key_result", "vetkd_public_key_args", "vetkd_public_key_result", "idlFactory", "IDL", "bitcoin_network", "bitcoin_address", "bitcoin_get_balance_args", "satoshi", "bitcoin_get_balance_result", "bitcoin_block_height", "bitcoin_get_block_headers_args", "bitcoin_block_header", "bitcoin_get_block_headers_result", "bitcoin_get_current_fee_percentiles_args", "millisatoshi_per_byte", "bitcoin_get_current_fee_percentiles_result", "bitcoin_get_utxos_args", "bitcoin_block_hash", "outpoint", "utxo", "bitcoin_get_utxos_result", "bitcoin_send_transaction_args", "canister_id", "canister_info_args", "change_origin", "snapshot_id", "change_details", "change", "canister_info_result", "canister_metadata_args", "canister_metadata_result", "canister_status_args", "environment_variable", "log_visibility", "definite_canister_settings", "canister_status_result", "clear_chunk_store_args", "canister_settings", "create_canister_args", "create_canister_result", "delete_canister_args", "delete_canister_snapshot_args", "deposit_cycles_args", "ecdsa_curve", "ecdsa_public_key_args", "ecdsa_public_key_result", "fetch_canister_logs_args", "canister_log_record", "fetch_canister_logs_result", "http_header", "http_request_result", "http_request_args", "canister_install_mode", "chunk_hash", "install_chunked_code_args", "wasm_module", "install_code_args", "list_canister_snapshots_args", "snapshot", "list_canister_snapshots_result", "load_canister_snapshot_args", "node_metrics_history_args", "node_metrics", "node_metrics_history_result", "provisional_create_canister_with_cycles_args", "provisional_create_canister_with_cycles_result", "provisional_top_up_canister_args", "raw_rand_result", "read_canister_snapshot_data_args", "read_canister_snapshot_data_response", "read_canister_snapshot_metadata_args", "read_canister_snapshot_metadata_response", "schnorr_algorithm", "schnorr_public_key_args", "schnorr_public_key_result", "sign_with_ecdsa_args", "sign_with_ecdsa_result", "schnorr_aux", "sign_with_schnorr_args", "sign_with_schnorr_result", "start_canister_args", "stop_canister_args", "stored_chunks_args", "stored_chunks_result", "subnet_info_args", "subnet_info_result", "take_canister_snapshot_args", "take_canister_snapshot_result", "uninstall_code_args", "update_settings_args", "upload_canister_snapshot_data_args", "upload_canister_snapshot_metadata_args", "upload_canister_snapshot_metadata_response", "upload_chunk_args", "upload_chunk_result", "vetkd_curve", "vetkd_derive_key_args", "vetkd_derive_key_result", "vetkd_public_key_args", "vetkd_public_key_result", "isNullish", "toNullable", "Principal", "LogVisibility", "UnsupportedLogVisibility", "toCanisterSettings", "controllers", "freezingThreshold", "memoryAllocation", "computeAllocation", "reservedCyclesLimit", "logVisibility", "wasmMemoryLimit", "wasmMemoryThreshold", "environmentVariables", "toLogVisibility", "c", "assertNever", "isNullish", "nonNullish", "toNullable", "hexStringToUint8Array", "uint8ArrayToHexString", "encodeSnapshotId", "snapshotId", "decodeSnapshotId", "mapSnapshotId", "toSnapshotArgs", "canister_id", "snapshotId", "mapSnapshotId", "toReplaceSnapshotArgs", "toNullable", "nonNullish", "toCanisterSnapshotMetadataKind", "kind", "assertNever", "toUploadCanisterSnapshotMetadata", "globals", "certified_data", "globalTimer", "onLowWasmMemoryHookStatus", "wasm_module_size", "stable_memory_size", "wasm_memory_size", "mapOnLowWasmMemoryHookStatus", "isNullish", "toUploadCanisterSnapshotDataKind", "assertNever", "fromNullable", "isNullish", "fromReadCanisterSnapshotMetadataResponse", "globals", "canisterVersion", "source", "certifiedData", "global_timer", "on_low_wasm_memory_hook_status", "wasmModuleSize", "stableMemorySize", "wasmChunkStore", "takenAtTimestamp", "wasmMemorySize", "mapSource", "mapOnLowWasmMemoryHookStatus", "value", "fromNullable", "nonNullish", "Principal", "transform", "methodName", "args", "_callConfig", "first", "specifiedId", "ICManagementCanister", "_ICManagementCanister", "service", "certifiedService", "certified", "options", "createServices", "Principal", "transform", "idlFactory", "settings", "senderCanisterVersion", "create_canister", "canister_id", "toNullable", "toCanisterSettings", "canisterId", "update_settings", "wasmModule", "rest", "install_code", "upload_chunk", "clear_chunk_store", "stored_chunks", "chunkHashesList", "targetCanisterId", "storeCanisterId", "wasmModuleHash", "install_chunked_code", "hexStringToUint8Array", "uninstall_code", "start_canister", "stop_canister", "canister_status", "delete_canister", "amount", "provisional_create_canister_with_cycles", "fetch_canister_logs", "params", "take_canister_snapshot", "toReplaceSnapshotArgs", "list_canister_snapshots", "load_canister_snapshot", "toSnapshotArgs", "delete_canister_snapshot", "read_canister_snapshot_metadata", "metadata", "fromReadCanisterSnapshotMetadataResponse", "kind", "read_canister_snapshot_data", "toCanisterSnapshotMetadataKind", "upload_canister_snapshot_metadata", "toUploadCanisterSnapshotMetadata", "chunk", "upload_canister_snapshot_data", "toUploadCanisterSnapshotDataKind"]
}
