import { type Address, type DecodeFunctionDataReturnType, type Hex } from "viem"; import type { RawTx } from "../../sdk/index.js"; import { BaseContract, type ChainContractsRegister, type ParsedCall, type ParsedCallArgs } from "../../sdk/index.js"; declare const abi: readonly [{ readonly type: "constructor"; readonly inputs: readonly [{ readonly name: "owner_"; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "acceptGovernance"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "instanceOwner"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "treasury"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "weth"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "gear"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "activate"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "addressProvider"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "bytecodeRepository"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "target"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "data"; readonly internalType: "bytes"; readonly type: "bytes"; }]; readonly name: "configureGlobal"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "target"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "data"; readonly internalType: "bytes"; readonly type: "bytes"; }]; readonly name: "configureLocal"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "target"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "data"; readonly internalType: "bytes"; readonly type: "bytes"; }]; readonly name: "configureTreasury"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "contractType"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "crossChainGovernanceProxy"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "contractType_"; readonly internalType: "bytes32"; readonly type: "bytes32"; }, { readonly name: "version_"; readonly internalType: "uint256"; readonly type: "uint256"; }, { readonly name: "saveVersion"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "deploySystemContract"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "instanceManagerProxy"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "isActivated"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "bool"; readonly type: "bool"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "owner"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "pendingGovernance"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "renounceOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "key"; readonly internalType: "bytes32"; readonly type: "bytes32"; }, { readonly name: "addr"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "saveVersion"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "setGlobalAddress"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "key"; readonly internalType: "bytes32"; readonly type: "bytes32"; }, { readonly name: "addr"; readonly internalType: "address"; readonly type: "address"; }, { readonly name: "saveVersion"; readonly internalType: "bool"; readonly type: "bool"; }]; readonly name: "setLocalAddress"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "newGovernance"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "setPendingGovernance"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly [{ readonly name: "newOwner"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "transferOwnership"; readonly outputs: readonly []; readonly stateMutability: "nonpayable"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "treasuryProxy"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "address"; readonly type: "address"; }]; readonly stateMutability: "view"; }, { readonly type: "function"; readonly inputs: readonly []; readonly name: "version"; readonly outputs: readonly [{ readonly name: ""; readonly internalType: "uint256"; readonly type: "uint256"; }]; readonly stateMutability: "view"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "newGovernance"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }]; readonly name: "AcceptGovernance"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "previousOwner"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }, { readonly name: "newOwner"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }]; readonly name: "OwnershipTransferred"; }, { readonly type: "event"; readonly anonymous: false; readonly inputs: readonly [{ readonly name: "newGovernance"; readonly internalType: "address"; readonly type: "address"; readonly indexed: true; }]; readonly name: "SetPendingGovernance"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "caller"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "CallerIsNotCrossChainGovernanceException"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "caller"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "CallerIsNotPendingGovernanceException"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "caller"; readonly internalType: "address"; readonly type: "address"; }]; readonly name: "CallerIsNotTreasuryException"; }, { readonly type: "error"; readonly inputs: readonly [{ readonly name: "key"; readonly internalType: "bytes32"; readonly type: "bytes32"; }]; readonly name: "InvalidKeyException"; }]; export declare class InstanceManagerContract extends BaseContract { #private; constructor(addr: Address, register: ChainContractsRegister); mustParseFunctionData(calldata: Hex): ParsedCall; protected parseFunctionParams(params: DecodeFunctionDataReturnType): ParsedCallArgs; isActivated(): Promise; getOwner(): Promise
; wrapConfigureGlobal(rawTx: RawTx): RawTx; wrapConfigureLocal(rawTx: RawTx): RawTx; wrapConfigureTreasury(rawTx: RawTx): RawTx; setLocalAddress(args: { key: string; address: Address; saveVersion: boolean; }): RawTx; setGlobalAddress(args: { key: string; address: Address; saveVersion: boolean; }): RawTx; deploySystemContractTx(args: { name: string; version: bigint; saveVersion: boolean; }): RawTx; activateTx(args: { instanceOwner: Address; treasury: Address; weth: Address; gear: Address; }): RawTx; } export {};