import type { SatelliteParameters } from '@junobuild/ic-client/actor'; import type { UpgradeCodeParams } from '../types/upgrade'; /** * Upgrades a satellite with the provided WASM module. * @param {Object} params - The parameters for upgrading the satellite. * @param {SatelliteParameters} params.satellite - The satellite parameters, including the actor and satellite ID. * @param {Uint8Array} params.wasmModule - The WASM module to be installed during the upgrade. * @param {boolean} params.deprecated - Indicates whether the upgrade is deprecated. * @param {boolean} params.deprecatedNoScope - Indicates whether the upgrade is deprecated and has no scope. * @param {boolean} [params.reset=false] - Optional. Specifies whether to reset the satellite (reinstall) instead of performing an upgrade. Defaults to `false`. * @param {boolean} [params.preClearChunks] - Optional. Forces clearing existing chunks before uploading a chunked WASM module. Recommended if the WASM exceeds 2MB. * @param {boolean} [params.takeSnapshot=true] - Optional. Whether to take a snapshot before performing the upgrade. Defaults to true. * @param {function} [params.onProgress] - Optional. Callback function to track progress during the upgrade process. * @throws {Error} Will throw an error if the satellite parameters are invalid or missing required fields. * @returns {Promise} Resolves when the upgrade process is complete. */ export declare const upgradeSatellite: ({ satellite, deprecated, deprecatedNoScope, reset, ...rest }: { satellite: SatelliteParameters; deprecated: boolean; deprecatedNoScope: boolean; reset?: boolean; } & Pick) => Promise;