Types
The Typescript type definitions used in ees-sdk are shown here:
export interface Job {
index: bigint;
owner: `0x${string}`,
sponsor: `0x${string}`,
active: boolean,
ignoreAppRevert: boolean,
inactiveGracePeriod: number,
application: `0x${string}`,
executionWindow: number,
executionCounter: number,
maxExecutions: number,
executionModuleCode: `0x${string}`,
feeModuleCode: `0x${string}`,
executionModule: RegularTimeInterval,
feeModule: LinearAuction,
nextExecution: bigint
}
export interface JobSpecification {
nonce: bigint,
deadline: bigint,
application: `0x${string}`,
executionWindow: number,
maxExecutions: number,
inactiveGracePeriod: number,
ignoreAppRevert: boolean,
executionModule: `0x${string}`,
feeModule: `0x${string}`,
executionModuleInput: `0x${string}`,
feeModuleInput: `0x${string}`,
applicationInput: `0x${string}`
}
export interface FeeModuleInput {
nonce: bigint,
deadline: bigint,
index: bigint,
feeModule: `0x${string}`,
feeModuleInput: `0x${string}`
}
export interface EpochInfo {
epoch: bigint,
epochPeriod: [bigint, bigint],
seed: `0x${string}`,
numberOfActiveExecutors: number,
commitPhasePeriod: [bigint, bigint],
revealPhasePeriod: [bigint, bigint],
roundPeriods: [bigint, bigint][],
roundBufferPeriods: [bigint, bigint][],
slashingPhasePeriod: [bigint, bigint],
selectedExecutors: `0x${string}`[]
}
export interface ExecutorInfo {
balance: bigint;
active: boolean;
initialized: boolean;
arrayIndex: number;
lastCheckinRound: number;
lastCheckinEpoch: bigint;
stakingTimestamp: bigint;
}
export interface CommitData {
executor: `0x${string}`,
commitment: `0x${string}`,
epoch: bigint,
revealed: boolean
}
export interface RegularTimeInterval {
lastExecution: number,
cooldown: number
}
export interface LinearAuction {
executionFeeToken: `0x${string}`,
minExecutionFee: bigint,
maxExecutionFee: bigint
}
export interface ProtocolConfig {
jobRegistry: `0x${string}`,
executionManager: `0x${string}`,
querier: `0x${string}`,
batchSlasher: `0x${string}`,
executionGasOverhead: bigint,
executionModulesLength: bigint,
feeModulesLength: bigint,
stakingToken: `0x${string}`,
stakingAmount: bigint,
minimumStakingPeriod: bigint,
stakingBalanceThreshold: bigint,
inactiveSlashingAmount: bigint,
commitSlashingAmount: bigint,
roundsPerEpoch: number,
executorTax: bigint,
protocolTax: bigint,
roundDuration: number,
roundBuffer: number,
slashingDuration: number,
commitPhaseDuration: number,
revealPhaseDuration: number,
selectionPhaseDuration: number,
totalRoundDuration: number,
epochDuration: number
}
Last updated