import { CHAINS } from '@lidofinance/lido-ethereum-sdk';
import { Address } from 'viem';
import { Erc20Tokens } from '../types.js';
export declare const CSM_SUPPORTED_CHAINS: CHAINS[];
export type CSM_SUPPORTED_CHAINS = CHAINS.Mainnet | CHAINS.Hoodi | CHAINS.Holesky;
export declare enum CSM_CONTRACT_NAMES {
    csAccounting = "csAccounting",
    csEjector = "csEjector",
    csExitPenalties = "csExitPenalties",
    csFeeDistributor = "csFeeDistributor",
    csFeeOracle = "csFeeOracle",
    csModule = "csModule",
    csParametersRegistry = "csParametersRegistry",
    csStrikes = "csStrikes",
    hashConsensus = "hashConsensus",
    permissionlessGate = "permissionlessGate",
    vettedGate = "vettedGate",
    stakingRouter = "stakingRouter",
    validatorsExitBusOracle = "validatorsExitBusOracle",
    withdrawalVault = "withdrawalVault",
    lidoRewardsVault = "lidoRewardsVault",
    stETH = "stETH",
    wstETH = "wstETH",
    CSMSatellite = "CSMSatellite"
}
export declare const CSM_CONTRACT_ADDRESSES: {
    [key in CSM_SUPPORTED_CHAINS]?: {
        [key2 in CSM_CONTRACT_NAMES | Erc20Tokens]?: Address;
    };
};
export declare const MODULE_ID_BY_CHAIN: {
    [key in CSM_SUPPORTED_CHAINS]: number;
};
export declare const DEPLOYMENT_BLOCK_NUMBER_BY_CHAIN: {
    [key in CSM_SUPPORTED_CHAINS]: bigint;
};
export declare const SUPPORTED_VERSION_BY_CONTRACT: {
    readonly csAccounting: readonly [2n, 2n];
    readonly csFeeDistributor: readonly [2n, 2n];
    readonly csModule: readonly [2n, 2n];
    readonly csParametersRegistry: readonly [1n, 1n];
    readonly csStrikes: readonly [1n, 1n];
    readonly vettedGate: readonly [1n, 1n];
};
export declare const PERCENT_BASIS = 10000n;
//# sourceMappingURL=base.d.ts.map