/// <reference types="node" />
import { CommandExecuteContext, CommandVerifyContext, VerificationResult } from '../../../../state_machine/types';
import { BaseInteroperabilityCommand } from '../../base_interoperability_command';
import { MainchainInteroperabilityInternalMethod } from '../internal_method';
export interface MessageRecoveryInitializationParams {
    chainID: Buffer;
    channel: Buffer;
    bitmap: Buffer;
    siblingHashes: Buffer[];
}
export declare class InitializeMessageRecoveryCommand extends BaseInteroperabilityCommand<MainchainInteroperabilityInternalMethod> {
    schema: {
        $id: string;
        type: string;
        required: string[];
        properties: {
            chainID: {
                dataType: string;
                fieldNumber: number;
                minLength: number;
                maxLength: number;
            };
            channel: {
                dataType: string;
                fieldNumber: number;
            };
            bitmap: {
                dataType: string;
                fieldNumber: number;
            };
            siblingHashes: {
                type: string;
                items: {
                    dataType: string;
                    minLength: number;
                    maxLength: number;
                };
                fieldNumber: number;
            };
        };
    };
    verify(context: CommandVerifyContext<MessageRecoveryInitializationParams>): Promise<VerificationResult>;
    execute(context: CommandExecuteContext<MessageRecoveryInitializationParams>): Promise<void>;
}
