import { ApiClient } from "@lodestar/api"; import { ChainForkConfig } from "@lodestar/config"; import { Metrics } from "../metrics.js"; import { PubkeyHex } from "../types.js"; import { IClock, LoggerVc } from "../util/index.js"; import { ChainHeaderTracker } from "./chainHeaderTracker.js"; import { ValidatorEventEmitter } from "./emitter.js"; import { SyncingStatusTracker } from "./syncingStatusTracker.js"; import { ValidatorStore } from "./validatorStore.js"; export type AttestationServiceOpts = { afterBlockDelaySlotFraction?: number; distributedAggregationSelection?: boolean; }; /** * Service that sets up and handles validator attester duties. */ export declare class AttestationService { private readonly logger; private readonly api; private readonly clock; private readonly validatorStore; private readonly emitter; private readonly metrics; private readonly config; private readonly opts?; private readonly dutiesService; constructor(logger: LoggerVc, api: ApiClient, clock: IClock, validatorStore: ValidatorStore, emitter: ValidatorEventEmitter, chainHeadTracker: ChainHeaderTracker, syncingStatusTracker: SyncingStatusTracker, metrics: Metrics | null, config: ChainForkConfig, opts?: AttestationServiceOpts | undefined); removeDutiesForKey(pubkey: PubkeyHex): void; private runAttestationTasks; private produceAttestation; private signAndPublishAttestations; private produceAndPublishAggregates; } //# sourceMappingURL=attestation.d.ts.map