import { ContainerType, ValueOf } from "@chainsafe/ssz"; import { BeaconConfig } from "@lodestar/config"; import { ForkPreBellatrix } from "@lodestar/params"; import { AggregateAndProof, BeaconBlock, BlindedBeaconBlock, Epoch, Root, Slot, altair, gloas, phase0 } from "@lodestar/types"; import { ValidatorRegistrationV1 } from "@lodestar/types/bellatrix"; import { PubkeyHex } from "../types.js"; export declare enum SignableMessageType { AGGREGATION_SLOT = "AGGREGATION_SLOT", AGGREGATE_AND_PROOF = "AGGREGATE_AND_PROOF", AGGREGATE_AND_PROOF_V2 = "AGGREGATE_AND_PROOF_V2", ATTESTATION = "ATTESTATION", BLOCK_V2 = "BLOCK_V2", DEPOSIT = "DEPOSIT", RANDAO_REVEAL = "RANDAO_REVEAL", VOLUNTARY_EXIT = "VOLUNTARY_EXIT", SYNC_COMMITTEE_MESSAGE = "SYNC_COMMITTEE_MESSAGE", SYNC_COMMITTEE_SELECTION_PROOF = "SYNC_COMMITTEE_SELECTION_PROOF", SYNC_COMMITTEE_CONTRIBUTION_AND_PROOF = "SYNC_COMMITTEE_CONTRIBUTION_AND_PROOF", VALIDATOR_REGISTRATION = "VALIDATOR_REGISTRATION", EXECUTION_PAYLOAD_ENVELOPE = "EXECUTION_PAYLOAD_ENVELOPE", PAYLOAD_ATTESTATION = "PAYLOAD_ATTESTATION", PROPOSER_PREFERENCES = "PROPOSER_PREFERENCES" } declare const DepositType: ContainerType<{ pubkey: import("@chainsafe/ssz").ByteVectorType; withdrawalCredentials: import("@chainsafe/ssz").ByteVectorType; amount: import("@chainsafe/ssz").UintNumberType; genesisForkVersion: import("@chainsafe/ssz").ByteVectorType; }>; declare const SyncCommitteeMessageType: ContainerType<{ beaconBlockRoot: import("@chainsafe/ssz").ByteVectorType; slot: import("@chainsafe/ssz").UintNumberType; }>; declare const SyncAggregatorSelectionDataType: ContainerType<{ slot: import("@chainsafe/ssz").UintNumberType; subcommitteeIndex: import("@chainsafe/ssz").UintNumberType; }>; export type SignableMessage = { type: SignableMessageType.AGGREGATION_SLOT; data: { slot: Slot; }; } | { type: SignableMessageType.AGGREGATE_AND_PROOF; data: phase0.AggregateAndProof; } | { type: SignableMessageType.AGGREGATE_AND_PROOF_V2; data: AggregateAndProof; } | { type: SignableMessageType.ATTESTATION; data: phase0.AttestationData; } | { type: SignableMessageType.BLOCK_V2; data: BeaconBlock | BlindedBeaconBlock; } | { type: SignableMessageType.DEPOSIT; data: ValueOf; } | { type: SignableMessageType.RANDAO_REVEAL; data: { epoch: Epoch; }; } | { type: SignableMessageType.VOLUNTARY_EXIT; data: phase0.VoluntaryExit; } | { type: SignableMessageType.SYNC_COMMITTEE_MESSAGE; data: ValueOf; } | { type: SignableMessageType.SYNC_COMMITTEE_SELECTION_PROOF; data: ValueOf; } | { type: SignableMessageType.SYNC_COMMITTEE_CONTRIBUTION_AND_PROOF; data: altair.ContributionAndProof; } | { type: SignableMessageType.VALIDATOR_REGISTRATION; data: ValidatorRegistrationV1; } | { type: SignableMessageType.EXECUTION_PAYLOAD_ENVELOPE; data: gloas.ExecutionPayloadEnvelope; } | { type: SignableMessageType.PAYLOAD_ATTESTATION; data: gloas.PayloadAttestationData; } | { type: SignableMessageType.PROPOSER_PREFERENCES; data: gloas.ProposerPreferences; }; /** * Return public keys from the server. */ export declare function externalSignerGetKeys(externalSignerUrl: string): Promise; /** * Return signature in bytes. Assumption that the pubkey has it's corresponding secret key in the keystore of an external signer. */ export declare function externalSignerPostSignature(config: BeaconConfig, externalSignerUrl: string, pubkeyHex: PubkeyHex, signingRoot: Root, signingSlot: Slot, signableMessage: SignableMessage): Promise; /** * Return upcheck status from server. */ export declare function externalSignerUpCheck(remoteUrl: string): Promise; export {}; //# sourceMappingURL=externalSignerClient.d.ts.map