import { ProcessPromise } from 'zx';
import { DerivedCoreConfig } from '@hyperlane-xyz/sdk';
import { Address } from '@hyperlane-xyz/utils';
/**
 * Deploys the Hyperlane core contracts to the specified chain using the provided config.
 */
export declare function hyperlaneCoreDeployRaw(coreInputPath: string, privateKey?: string, skipConfirmationPrompts?: boolean, hypKey?: string): ProcessPromise;
/**
 * Deploys the Hyperlane core contracts to the specified chain using the provided config.
 */
export declare function hyperlaneCoreDeploy(chain: string, coreInputPath: string): Promise<import("zx").ProcessOutput>;
/**
 * Reads a Hyperlane core deployment on the specified chain using the provided config.
 */
export declare function hyperlaneCoreRead(chain: string, coreOutputPath: string): Promise<import("zx").ProcessOutput>;
/**
 * Verifies that a Hyperlane core deployment matches the provided config on the specified chain.
 */
export declare function hyperlaneCoreCheck(chain: string, coreOutputPath: string, mailbox?: Address): ProcessPromise;
/**
 * Creates a Hyperlane core deployment config
 */
export declare function hyperlaneCoreInit(coreOutputPath: string, privateKey?: string, hyp_key?: string): ProcessPromise;
/**
 * Updates a Hyperlane core deployment on the specified chain using the provided config.
 */
export declare function hyperlaneCoreApply(chain: string, coreOutputPath: string): Promise<import("zx").ProcessOutput>;
/**
 * Reads the Core deployment config and outputs it to specified output path.
 */
export declare function readCoreConfig(chain: string, coreConfigPath: string): Promise<DerivedCoreConfig>;
//# sourceMappingURL=core.d.ts.map