lisk-framework
Version:
Lisk blockchain application platform
66 lines (65 loc) • 2.44 kB
TypeScript
import { CommandExecuteContext, CommandVerifyContext, VerificationResult } from '../../../../state_machine';
import { MainchainRegistrationParams, ValidatorsMethod } from '../../types';
import { BaseInteroperabilityCommand } from '../../base_interoperability_command';
import { SidechainInteroperabilityInternalMethod } from '../internal_method';
export declare class RegisterMainchainCommand extends BaseInteroperabilityCommand<SidechainInteroperabilityInternalMethod> {
schema: {
$id: string;
type: string;
required: string[];
properties: {
ownChainID: {
dataType: string;
fieldNumber: number;
minLength: number;
maxLength: number;
};
ownName: {
dataType: string;
fieldNumber: number;
minLength: number;
maxLength: number;
};
mainchainValidators: {
fieldNumber: number;
maxItems: number;
type: string;
items: {
type: string;
required: string[];
properties: {
blsKey: {
dataType: string;
fieldNumber: number;
minLength: number;
maxLength: number;
};
bftWeight: {
dataType: string;
fieldNumber: number;
};
};
};
minItems: number;
};
mainchainCertificateThreshold: {
dataType: string;
fieldNumber: number;
};
signature: {
dataType: string;
fieldNumber: number;
minLength: number;
maxLength: number;
};
aggregationBits: {
dataType: string;
fieldNumber: number;
};
};
};
private _validatorsMethod;
addDependencies(validatorsMethod: ValidatorsMethod): void;
verify(context: CommandVerifyContext<MainchainRegistrationParams>): Promise<VerificationResult>;
execute(context: CommandExecuteContext<MainchainRegistrationParams>): Promise<void>;
}