{
  "version": 3,
  "sources": ["../src/cmc.canister.ts", "../src/candid/cmc.certified.idl.js", "../src/candid/cmc.idl.js", "../src/cmc.errors.ts"],
  "sourcesContent": ["import { Canister, createServices, type QueryParams } from \"@dfinity/utils\";\nimport type { Principal } from \"@icp-sdk/core/principal\";\nimport type {\n  _SERVICE as CMCCanisterService,\n  Cycles,\n  NotifyCreateCanisterArg,\n  NotifyTopUpArg,\n  SubnetTypesToSubnetsResponse,\n} from \"./candid/cmc\";\nimport { idlFactory as certifiedIdlFactory } from \"./candid/cmc.certified.idl\";\nimport { idlFactory } from \"./candid/cmc.idl\";\nimport { throwNotifyError } from \"./cmc.errors\";\nimport type { CMCCanisterOptions } from \"./cmc.options\";\n\nexport class CMCCanister extends Canister<CMCCanisterService> {\n  static create(options: CMCCanisterOptions): CMCCanister {\n    const { service, certifiedService, canisterId } =\n      createServices<CMCCanisterService>({\n        options,\n        idlFactory,\n        certifiedIdlFactory,\n      });\n\n    return new CMCCanister(canisterId, service, certifiedService);\n  }\n\n  /**\n   * Returns conversion rate of ICP to Cycles. It can be called as query or update.\n   *\n   * @param {Object} [params] - The parameters for the call.\n   * @param {boolean} [params.certified] - Determines whether the response should be certified (default: non-certified)\n   *\n   * @returns Promise<BigInt>\n   */\n  public getIcpToCyclesConversionRate = async ({\n    certified,\n  }: QueryParams = {}): Promise<bigint> => {\n    const { data } = await this.caller({\n      certified,\n    }).get_icp_xdr_conversion_rate();\n\n    // TODO: validate the certificate in the response - https://dfinity.atlassian.net/browse/GIX-150\n    // Example: https://github.com/dfinity/response-verification/tree/main/examples/certification/certified-counter\n    return data.xdr_permyriad_per_icp;\n  };\n\n  /**\n   * Notifies Cycles Minting Canister of the creation of a new canister.\n   * It returns the new canister principal.\n   *\n   * @param {Object} request\n   * @param {Principal} request.controller\n   * @param {BlockIndex} request.block_index\n   * @returns Promise<Principal>\n   * @throws RefundedError, InvalidaTransactionError, ProcessingError, TransactionTooOldError, CMCError\n   */\n  public notifyCreateCanister = async (\n    request: NotifyCreateCanisterArg,\n  ): Promise<Principal> => {\n    const response = await this.service.notify_create_canister(request);\n    if (\"Err\" in response) {\n      throwNotifyError(response);\n    }\n    if (\"Ok\" in response) {\n      return response.Ok;\n    }\n    // Edge case\n    throw new Error(\n      `Unsupported response type in notifyCreateCanister ${JSON.stringify(\n        response,\n      )}`,\n    );\n  };\n\n  /**\n   * Notifies Cycles Minting Canister of new cycles being added to canister.\n   * It returns the new Cycles of the canister.\n   *\n   * @param {Object} request\n   * @param {Principal} request.canister_id\n   * @param {BlockIndex} request.block_index\n   * @returns Promise<Cycles>\n   * @throws RefundedError, InvalidaTransactionError, ProcessingError, TransactionTooOldError, CMCError\n   */\n  public notifyTopUp = async (request: NotifyTopUpArg): Promise<Cycles> => {\n    const response = await this.service.notify_top_up(request);\n    if (\"Err\" in response) {\n      throwNotifyError(response);\n    }\n    if (\"Ok\" in response) {\n      return response.Ok;\n    }\n    // Edge case\n    throw new Error(\n      `Unsupported response type in notifyTopUp ${JSON.stringify(response)}`,\n    );\n  };\n\n  /**\n   * This function calls the `get_default_subnets` method of the CMC canister, which returns a list of\n   * default subnets as `Principal` objects. It can be called as query or update.\n   *\n   * @param {Object} [params] - The query parameters for the call.\n   * @param {boolean} [params.certified] - Determines whether the response should be certified\n   * (default: non-certified if not specified).\n   *\n   * @returns {Promise<Principal[]>} - A promise that resolves to an array of `Principal` objects\n   * representing the default subnets.\n   */\n  public getDefaultSubnets = ({ certified }: QueryParams = {}): Promise<\n    Principal[]\n  > => {\n    const { get_default_subnets } = this.caller({ certified });\n    return get_default_subnets();\n  };\n\n  /**\n   * This function calls the `get_subnet_types_to_subnets` method of the CMC canister, which returns a list of subnets where canisters can be created.\n   * These subnets are excluded from the random subnet selection process used by the CMC when no explicit subnet ID is provided\n   * during canister creation and therefore, not provided in the results of the similar function `get_default_subnets`.\n   *\n   * @param {Object} [params] - The optional query parameters for the call.\n   * @param {boolean} [params.certified=false] - Specifies whether the response should be certified.\n   * If not provided, the response defaults to non-certified.\n   *\n   * @returns {Promise<SubnetTypesToSubnetsResponse>} - A promise that resolves to an object representing\n   * the mapping of subnet types to subnets.\n   */\n  public getSubnetTypesToSubnets = ({\n    certified,\n  }: QueryParams = {}): Promise<SubnetTypesToSubnetsResponse> => {\n    const { get_subnet_types_to_subnets } = this.caller({ certified });\n    return get_subnet_types_to_subnets();\n  };\n}\n", "/* eslint-disable */\n\n// @ts-nocheck\n\n// This file was automatically generated by @icp-sdk/bindgen@0.2.0.\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 ExchangeRateCanister = IDL.Variant({\n    Set: IDL.Principal,\n    Unset: IDL.Null,\n  });\n  const AccountIdentifier = IDL.Text;\n  const CyclesCanisterInitPayload = IDL.Record({\n    exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n    cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n    last_purged_notification: IDL.Opt(IDL.Nat64),\n    governance_canister_id: IDL.Opt(IDL.Principal),\n    minting_account_id: IDL.Opt(AccountIdentifier),\n    ledger_canister_id: IDL.Opt(IDL.Principal),\n  });\n  const SubnetListWithType = IDL.Record({\n    subnets: IDL.Vec(IDL.Principal),\n    subnet_type: IDL.Text,\n  });\n  const ChangeSubnetTypeAssignmentArgs = IDL.Variant({\n    Add: SubnetListWithType,\n    Remove: SubnetListWithType,\n  });\n  const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });\n  const SubnetSelection = IDL.Variant({\n    Filter: SubnetFilter,\n    Subnet: IDL.Record({ subnet: IDL.Principal }),\n  });\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 CanisterSettings = 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    log_memory_limit: IDL.Opt(IDL.Nat),\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 CreateCanisterArg = IDL.Record({\n    subnet_selection: IDL.Opt(SubnetSelection),\n    settings: IDL.Opt(CanisterSettings),\n    subnet_type: IDL.Opt(IDL.Text),\n  });\n  const CreateCanisterError = IDL.Variant({\n    Refunded: IDL.Record({\n      create_error: IDL.Text,\n      refund_amount: IDL.Nat,\n    }),\n  });\n  const CreateCanisterResult = IDL.Variant({\n    Ok: IDL.Principal,\n    Err: CreateCanisterError,\n  });\n  const IcpXdrConversionRate = IDL.Record({\n    xdr_permyriad_per_icp: IDL.Nat64,\n    timestamp_seconds: IDL.Nat64,\n  });\n  const IcpXdrConversionRateResponse = IDL.Record({\n    certificate: IDL.Vec(IDL.Nat8),\n    data: IcpXdrConversionRate,\n    hash_tree: IDL.Vec(IDL.Nat8),\n  });\n  const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = IDL.Record({\n    data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal))),\n  });\n  const SubnetTypesToSubnetsResponse = IDL.Record({\n    data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal))),\n  });\n  const BlockIndex = IDL.Nat64;\n  const NotifyCreateCanisterArg = IDL.Record({\n    controller: IDL.Principal,\n    block_index: BlockIndex,\n    subnet_selection: IDL.Opt(SubnetSelection),\n    settings: IDL.Opt(CanisterSettings),\n    subnet_type: IDL.Opt(IDL.Text),\n  });\n  const NotifyError = IDL.Variant({\n    Refunded: IDL.Record({\n      block_index: IDL.Opt(BlockIndex),\n      reason: IDL.Text,\n    }),\n    InvalidTransaction: IDL.Text,\n    Other: IDL.Record({\n      error_message: IDL.Text,\n      error_code: IDL.Nat64,\n    }),\n    Processing: IDL.Null,\n    TransactionTooOld: BlockIndex,\n  });\n  const NotifyCreateCanisterResult = IDL.Variant({\n    Ok: IDL.Principal,\n    Err: NotifyError,\n  });\n  const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));\n  const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));\n  const NotifyMintCyclesArg = IDL.Record({\n    block_index: BlockIndex,\n    deposit_memo: Memo,\n    to_subaccount: Subaccount,\n  });\n  const NotifyMintCyclesSuccess = IDL.Record({\n    balance: IDL.Nat,\n    block_index: IDL.Nat,\n    minted: IDL.Nat,\n  });\n  const NotifyMintCyclesResult = IDL.Variant({\n    Ok: NotifyMintCyclesSuccess,\n    Err: NotifyError,\n  });\n  const NotifyTopUpArg = IDL.Record({\n    block_index: BlockIndex,\n    canister_id: IDL.Principal,\n  });\n  const Cycles = IDL.Nat;\n  const NotifyTopUpResult = IDL.Variant({ Ok: Cycles, Err: NotifyError });\n  const SetAuthorizedSubnetworkListArgs = IDL.Record({\n    who: IDL.Opt(IDL.Principal),\n    subnets: IDL.Vec(IDL.Principal),\n  });\n  const UpdateSubnetTypeArgs = IDL.Variant({\n    Add: IDL.Text,\n    Remove: IDL.Text,\n  });\n\n  return IDL.Service({\n    change_subnet_type_assignment: IDL.Func(\n      [ChangeSubnetTypeAssignmentArgs],\n      [],\n      [],\n    ),\n    create_canister: IDL.Func([CreateCanisterArg], [CreateCanisterResult], []),\n    get_build_metadata: IDL.Func([], [IDL.Text], []),\n    get_default_subnets: IDL.Func([], [IDL.Vec(IDL.Principal)], []),\n    get_icp_xdr_conversion_rate: IDL.Func(\n      [],\n      [IcpXdrConversionRateResponse],\n      [],\n    ),\n    get_principals_authorized_to_create_canisters_to_subnets: IDL.Func(\n      [],\n      [PrincipalsAuthorizedToCreateCanistersToSubnetsResponse],\n      [],\n    ),\n    get_subnet_types_to_subnets: IDL.Func(\n      [],\n      [SubnetTypesToSubnetsResponse],\n      [],\n    ),\n    notify_create_canister: IDL.Func(\n      [NotifyCreateCanisterArg],\n      [NotifyCreateCanisterResult],\n      [],\n    ),\n    notify_mint_cycles: IDL.Func(\n      [NotifyMintCyclesArg],\n      [NotifyMintCyclesResult],\n      [],\n    ),\n    notify_top_up: IDL.Func([NotifyTopUpArg], [NotifyTopUpResult], []),\n    set_authorized_subnetwork_list: IDL.Func(\n      [SetAuthorizedSubnetworkListArgs],\n      [],\n      [],\n    ),\n    update_subnet_type: IDL.Func([UpdateSubnetTypeArgs], [], []),\n  });\n};\n\nexport const init = ({ IDL }) => {\n  const ExchangeRateCanister = IDL.Variant({\n    Set: IDL.Principal,\n    Unset: IDL.Null,\n  });\n  const AccountIdentifier = IDL.Text;\n  const CyclesCanisterInitPayload = IDL.Record({\n    exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n    cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n    last_purged_notification: IDL.Opt(IDL.Nat64),\n    governance_canister_id: IDL.Opt(IDL.Principal),\n    minting_account_id: IDL.Opt(AccountIdentifier),\n    ledger_canister_id: IDL.Opt(IDL.Principal),\n  });\n\n  return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "/* eslint-disable */\n\n// @ts-nocheck\n\n// This file was automatically generated by @icp-sdk/bindgen@0.2.0.\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 ExchangeRateCanister = IDL.Variant({\n    Set: IDL.Principal,\n    Unset: IDL.Null,\n  });\n  const AccountIdentifier = IDL.Text;\n  const CyclesCanisterInitPayload = IDL.Record({\n    exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n    cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n    last_purged_notification: IDL.Opt(IDL.Nat64),\n    governance_canister_id: IDL.Opt(IDL.Principal),\n    minting_account_id: IDL.Opt(AccountIdentifier),\n    ledger_canister_id: IDL.Opt(IDL.Principal),\n  });\n  const SubnetListWithType = IDL.Record({\n    subnets: IDL.Vec(IDL.Principal),\n    subnet_type: IDL.Text,\n  });\n  const ChangeSubnetTypeAssignmentArgs = IDL.Variant({\n    Add: SubnetListWithType,\n    Remove: SubnetListWithType,\n  });\n  const SubnetFilter = IDL.Record({ subnet_type: IDL.Opt(IDL.Text) });\n  const SubnetSelection = IDL.Variant({\n    Filter: SubnetFilter,\n    Subnet: IDL.Record({ subnet: IDL.Principal }),\n  });\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 CanisterSettings = 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    log_memory_limit: IDL.Opt(IDL.Nat),\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 CreateCanisterArg = IDL.Record({\n    subnet_selection: IDL.Opt(SubnetSelection),\n    settings: IDL.Opt(CanisterSettings),\n    subnet_type: IDL.Opt(IDL.Text),\n  });\n  const CreateCanisterError = IDL.Variant({\n    Refunded: IDL.Record({\n      create_error: IDL.Text,\n      refund_amount: IDL.Nat,\n    }),\n  });\n  const CreateCanisterResult = IDL.Variant({\n    Ok: IDL.Principal,\n    Err: CreateCanisterError,\n  });\n  const IcpXdrConversionRate = IDL.Record({\n    xdr_permyriad_per_icp: IDL.Nat64,\n    timestamp_seconds: IDL.Nat64,\n  });\n  const IcpXdrConversionRateResponse = IDL.Record({\n    certificate: IDL.Vec(IDL.Nat8),\n    data: IcpXdrConversionRate,\n    hash_tree: IDL.Vec(IDL.Nat8),\n  });\n  const PrincipalsAuthorizedToCreateCanistersToSubnetsResponse = IDL.Record({\n    data: IDL.Vec(IDL.Tuple(IDL.Principal, IDL.Vec(IDL.Principal))),\n  });\n  const SubnetTypesToSubnetsResponse = IDL.Record({\n    data: IDL.Vec(IDL.Tuple(IDL.Text, IDL.Vec(IDL.Principal))),\n  });\n  const BlockIndex = IDL.Nat64;\n  const NotifyCreateCanisterArg = IDL.Record({\n    controller: IDL.Principal,\n    block_index: BlockIndex,\n    subnet_selection: IDL.Opt(SubnetSelection),\n    settings: IDL.Opt(CanisterSettings),\n    subnet_type: IDL.Opt(IDL.Text),\n  });\n  const NotifyError = IDL.Variant({\n    Refunded: IDL.Record({\n      block_index: IDL.Opt(BlockIndex),\n      reason: IDL.Text,\n    }),\n    InvalidTransaction: IDL.Text,\n    Other: IDL.Record({\n      error_message: IDL.Text,\n      error_code: IDL.Nat64,\n    }),\n    Processing: IDL.Null,\n    TransactionTooOld: BlockIndex,\n  });\n  const NotifyCreateCanisterResult = IDL.Variant({\n    Ok: IDL.Principal,\n    Err: NotifyError,\n  });\n  const Memo = IDL.Opt(IDL.Vec(IDL.Nat8));\n  const Subaccount = IDL.Opt(IDL.Vec(IDL.Nat8));\n  const NotifyMintCyclesArg = IDL.Record({\n    block_index: BlockIndex,\n    deposit_memo: Memo,\n    to_subaccount: Subaccount,\n  });\n  const NotifyMintCyclesSuccess = IDL.Record({\n    balance: IDL.Nat,\n    block_index: IDL.Nat,\n    minted: IDL.Nat,\n  });\n  const NotifyMintCyclesResult = IDL.Variant({\n    Ok: NotifyMintCyclesSuccess,\n    Err: NotifyError,\n  });\n  const NotifyTopUpArg = IDL.Record({\n    block_index: BlockIndex,\n    canister_id: IDL.Principal,\n  });\n  const Cycles = IDL.Nat;\n  const NotifyTopUpResult = IDL.Variant({ Ok: Cycles, Err: NotifyError });\n  const SetAuthorizedSubnetworkListArgs = IDL.Record({\n    who: IDL.Opt(IDL.Principal),\n    subnets: IDL.Vec(IDL.Principal),\n  });\n  const UpdateSubnetTypeArgs = IDL.Variant({\n    Add: IDL.Text,\n    Remove: IDL.Text,\n  });\n\n  return IDL.Service({\n    change_subnet_type_assignment: IDL.Func(\n      [ChangeSubnetTypeAssignmentArgs],\n      [],\n      [],\n    ),\n    create_canister: IDL.Func([CreateCanisterArg], [CreateCanisterResult], []),\n    get_build_metadata: IDL.Func([], [IDL.Text], [\"query\"]),\n    get_default_subnets: IDL.Func([], [IDL.Vec(IDL.Principal)], [\"query\"]),\n    get_icp_xdr_conversion_rate: IDL.Func(\n      [],\n      [IcpXdrConversionRateResponse],\n      [\"query\"],\n    ),\n    get_principals_authorized_to_create_canisters_to_subnets: IDL.Func(\n      [],\n      [PrincipalsAuthorizedToCreateCanistersToSubnetsResponse],\n      [\"query\"],\n    ),\n    get_subnet_types_to_subnets: IDL.Func(\n      [],\n      [SubnetTypesToSubnetsResponse],\n      [\"query\"],\n    ),\n    notify_create_canister: IDL.Func(\n      [NotifyCreateCanisterArg],\n      [NotifyCreateCanisterResult],\n      [],\n    ),\n    notify_mint_cycles: IDL.Func(\n      [NotifyMintCyclesArg],\n      [NotifyMintCyclesResult],\n      [],\n    ),\n    notify_top_up: IDL.Func([NotifyTopUpArg], [NotifyTopUpResult], []),\n    set_authorized_subnetwork_list: IDL.Func(\n      [SetAuthorizedSubnetworkListArgs],\n      [],\n      [],\n    ),\n    update_subnet_type: IDL.Func([UpdateSubnetTypeArgs], [], []),\n  });\n};\n\nexport const init = ({ IDL }) => {\n  const ExchangeRateCanister = IDL.Variant({\n    Set: IDL.Principal,\n    Unset: IDL.Null,\n  });\n  const AccountIdentifier = IDL.Text;\n  const CyclesCanisterInitPayload = IDL.Record({\n    exchange_rate_canister: IDL.Opt(ExchangeRateCanister),\n    cycles_ledger_canister_id: IDL.Opt(IDL.Principal),\n    last_purged_notification: IDL.Opt(IDL.Nat64),\n    governance_canister_id: IDL.Opt(IDL.Principal),\n    minting_account_id: IDL.Opt(AccountIdentifier),\n    ledger_canister_id: IDL.Opt(IDL.Principal),\n  });\n\n  return [IDL.Opt(CyclesCanisterInitPayload)];\n};\n", "import { assertNever, jsonReplacer } from \"@dfinity/utils\";\nimport type { NotifyError } from \"./candid/cmc\";\n\nexport class RefundedError extends Error {}\nexport class InvalidaTransactionError extends Error {}\nexport class CMCError extends Error {}\nexport class ProcessingError extends Error {}\nexport class TransactionTooOldError extends Error {}\n\n// Throws one of the errors above\nexport const throwNotifyError = ({\n  Err: error,\n}: {\n  Err: NotifyError;\n}): void => {\n  if (\"Refunded\" in error) {\n    throw new RefundedError(error.Refunded.reason);\n  }\n  if (\"InvalidTransaction\" in error) {\n    throw new InvalidaTransactionError(error.InvalidTransaction);\n  }\n  if (\"Processing\" in error) {\n    throw new ProcessingError();\n  }\n  if (\"TransactionTooOld\" in error) {\n    throw new TransactionTooOldError();\n  }\n  if (\"Other\" in error) {\n    throw new CMCError(\n      `Error in CMC with code ${error.Other.error_code}: ${error.Other.error_message}`,\n    );\n  }\n\n  assertNever(\n    error,\n    `Unsupported error type ${JSON.stringify(error, jsonReplacer)}`,\n  );\n};\n"],
  "mappings": "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",
  "names": ["Canister", "createServices", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetListWithType", "ChangeSubnetTypeAssignmentArgs", "SubnetFilter", "SubnetSelection", "environment_variable", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "SetAuthorizedSubnetworkListArgs", "UpdateSubnetTypeArgs", "idlFactory", "IDL", "ExchangeRateCanister", "AccountIdentifier", "CyclesCanisterInitPayload", "SubnetListWithType", "ChangeSubnetTypeAssignmentArgs", "SubnetFilter", "SubnetSelection", "environment_variable", "log_visibility", "CanisterSettings", "CreateCanisterArg", "CreateCanisterError", "CreateCanisterResult", "IcpXdrConversionRate", "IcpXdrConversionRateResponse", "PrincipalsAuthorizedToCreateCanistersToSubnetsResponse", "SubnetTypesToSubnetsResponse", "BlockIndex", "NotifyCreateCanisterArg", "NotifyError", "NotifyCreateCanisterResult", "Memo", "Subaccount", "NotifyMintCyclesArg", "NotifyMintCyclesSuccess", "NotifyMintCyclesResult", "NotifyTopUpArg", "Cycles", "NotifyTopUpResult", "SetAuthorizedSubnetworkListArgs", "UpdateSubnetTypeArgs", "assertNever", "jsonReplacer", "RefundedError", "InvalidaTransactionError", "CMCError", "ProcessingError", "TransactionTooOldError", "throwNotifyError", "error", "CMCCanister", "_CMCCanister", "Canister", "options", "service", "certifiedService", "canisterId", "createServices", "idlFactory", "certified", "data", "request", "response", "throwNotifyError", "get_default_subnets", "get_subnet_types_to_subnets"]
}
