UNPKG

@d8x/perpetuals-sdk

Version:

Node TypeScript SDK for D8X Perpetual Futures

470 lines (469 loc) 24.9 kB
import type { BaseContract, BigNumberish, BytesLike, FunctionFragment, Result, Interface, EventFragment, AddressLike, ContractRunner, ContractMethod, Listener } from "ethers"; import type { TypedContractEvent, TypedDeferredTopicFilter, TypedEventLog, TypedLogDescription, TypedListener, TypedContractMethod } from "./common"; export interface RedStoneAbiInterface extends Interface { getFunction(nameOrSignature: "aggregateValues" | "aggregator" | "decimals" | "description" | "extractTimestampsAndAssertAllAreEqual" | "getAllowedTimestampDiffsInSeconds" | "getAuthorisedSignerIndex" | "getBlockTimestamp" | "getBlockTimestampFromLatestUpdate" | "getDataFeedId" | "getDataFeedIds" | "getDataFeedIndex" | "getDataServiceId" | "getDataTimestampFromLatestUpdate" | "getLatestRoundId" | "getLatestRoundParams" | "getMinIntervalBetweenUpdates" | "getPackedTimestampsForRound" | "getPackedTimestampsFromLatestUpdate" | "getPriceFeedAdapter" | "getPriceFeedAdapterWithRounds" | "getRoundData" | "getRoundDataFromAdapter" | "getTimestampsFromLatestUpdate" | "getUniqueSignersThreshold" | "getValueForDataFeed" | "getValueForDataFeedAndRound" | "getValueForDataFeedUnsafe" | "getValuesForDataFeeds" | "getValuesForDataFeedsUnsafe" | "initialize" | "latestAnswer" | "latestRound" | "latestRoundData" | "requireAuthorisedUpdater" | "updateDataFeedsValues" | "validateDataFeedValueOnRead" | "validateDataFeedValueOnWrite" | "validateDataPackagesTimestampOnce" | "validateProposedDataPackagesTimestamp" | "validateTimestamp" | "version"): FunctionFragment; getEvent(nameOrSignatureOrTopic: "AnswerUpdated" | "Initialized"): EventFragment; encodeFunctionData(functionFragment: "aggregateValues", values: [BigNumberish[]]): string; encodeFunctionData(functionFragment: "aggregator", values?: undefined): string; encodeFunctionData(functionFragment: "decimals", values?: undefined): string; encodeFunctionData(functionFragment: "description", values?: undefined): string; encodeFunctionData(functionFragment: "extractTimestampsAndAssertAllAreEqual", values?: undefined): string; encodeFunctionData(functionFragment: "getAllowedTimestampDiffsInSeconds", values?: undefined): string; encodeFunctionData(functionFragment: "getAuthorisedSignerIndex", values: [AddressLike]): string; encodeFunctionData(functionFragment: "getBlockTimestamp", values?: undefined): string; encodeFunctionData(functionFragment: "getBlockTimestampFromLatestUpdate", values?: undefined): string; encodeFunctionData(functionFragment: "getDataFeedId", values?: undefined): string; encodeFunctionData(functionFragment: "getDataFeedIds", values?: undefined): string; encodeFunctionData(functionFragment: "getDataFeedIndex", values: [BytesLike]): string; encodeFunctionData(functionFragment: "getDataServiceId", values?: undefined): string; encodeFunctionData(functionFragment: "getDataTimestampFromLatestUpdate", values?: undefined): string; encodeFunctionData(functionFragment: "getLatestRoundId", values?: undefined): string; encodeFunctionData(functionFragment: "getLatestRoundParams", values?: undefined): string; encodeFunctionData(functionFragment: "getMinIntervalBetweenUpdates", values?: undefined): string; encodeFunctionData(functionFragment: "getPackedTimestampsForRound", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getPackedTimestampsFromLatestUpdate", values?: undefined): string; encodeFunctionData(functionFragment: "getPriceFeedAdapter", values?: undefined): string; encodeFunctionData(functionFragment: "getPriceFeedAdapterWithRounds", values?: undefined): string; encodeFunctionData(functionFragment: "getRoundData", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "getRoundDataFromAdapter", values: [BytesLike, BigNumberish]): string; encodeFunctionData(functionFragment: "getTimestampsFromLatestUpdate", values?: undefined): string; encodeFunctionData(functionFragment: "getUniqueSignersThreshold", values?: undefined): string; encodeFunctionData(functionFragment: "getValueForDataFeed", values: [BytesLike]): string; encodeFunctionData(functionFragment: "getValueForDataFeedAndRound", values: [BytesLike, BigNumberish]): string; encodeFunctionData(functionFragment: "getValueForDataFeedUnsafe", values: [BytesLike]): string; encodeFunctionData(functionFragment: "getValuesForDataFeeds", values: [BytesLike[]]): string; encodeFunctionData(functionFragment: "getValuesForDataFeedsUnsafe", values: [BytesLike[]]): string; encodeFunctionData(functionFragment: "initialize", values?: undefined): string; encodeFunctionData(functionFragment: "latestAnswer", values?: undefined): string; encodeFunctionData(functionFragment: "latestRound", values?: undefined): string; encodeFunctionData(functionFragment: "latestRoundData", values?: undefined): string; encodeFunctionData(functionFragment: "requireAuthorisedUpdater", values: [AddressLike]): string; encodeFunctionData(functionFragment: "updateDataFeedsValues", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "validateDataFeedValueOnRead", values: [BytesLike, BigNumberish]): string; encodeFunctionData(functionFragment: "validateDataFeedValueOnWrite", values: [BytesLike, BigNumberish]): string; encodeFunctionData(functionFragment: "validateDataPackagesTimestampOnce", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "validateProposedDataPackagesTimestamp", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "validateTimestamp", values: [BigNumberish]): string; encodeFunctionData(functionFragment: "version", values?: undefined): string; decodeFunctionResult(functionFragment: "aggregateValues", data: BytesLike): Result; decodeFunctionResult(functionFragment: "aggregator", data: BytesLike): Result; decodeFunctionResult(functionFragment: "decimals", data: BytesLike): Result; decodeFunctionResult(functionFragment: "description", data: BytesLike): Result; decodeFunctionResult(functionFragment: "extractTimestampsAndAssertAllAreEqual", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getAllowedTimestampDiffsInSeconds", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getAuthorisedSignerIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getBlockTimestamp", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getBlockTimestampFromLatestUpdate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getDataFeedId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getDataFeedIds", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getDataFeedIndex", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getDataServiceId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getDataTimestampFromLatestUpdate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLatestRoundId", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getLatestRoundParams", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getMinIntervalBetweenUpdates", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPackedTimestampsForRound", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPackedTimestampsFromLatestUpdate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPriceFeedAdapter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getPriceFeedAdapterWithRounds", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRoundData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getRoundDataFromAdapter", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getTimestampsFromLatestUpdate", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getUniqueSignersThreshold", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getValueForDataFeed", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getValueForDataFeedAndRound", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getValueForDataFeedUnsafe", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getValuesForDataFeeds", data: BytesLike): Result; decodeFunctionResult(functionFragment: "getValuesForDataFeedsUnsafe", data: BytesLike): Result; decodeFunctionResult(functionFragment: "initialize", data: BytesLike): Result; decodeFunctionResult(functionFragment: "latestAnswer", data: BytesLike): Result; decodeFunctionResult(functionFragment: "latestRound", data: BytesLike): Result; decodeFunctionResult(functionFragment: "latestRoundData", data: BytesLike): Result; decodeFunctionResult(functionFragment: "requireAuthorisedUpdater", data: BytesLike): Result; decodeFunctionResult(functionFragment: "updateDataFeedsValues", data: BytesLike): Result; decodeFunctionResult(functionFragment: "validateDataFeedValueOnRead", data: BytesLike): Result; decodeFunctionResult(functionFragment: "validateDataFeedValueOnWrite", data: BytesLike): Result; decodeFunctionResult(functionFragment: "validateDataPackagesTimestampOnce", data: BytesLike): Result; decodeFunctionResult(functionFragment: "validateProposedDataPackagesTimestamp", data: BytesLike): Result; decodeFunctionResult(functionFragment: "validateTimestamp", data: BytesLike): Result; decodeFunctionResult(functionFragment: "version", data: BytesLike): Result; } export declare namespace AnswerUpdatedEvent { type InputTuple = [ current: BigNumberish, roundId: BigNumberish, updatedAt: BigNumberish ]; type OutputTuple = [ current: bigint, roundId: bigint, updatedAt: bigint ]; interface OutputObject { current: bigint; roundId: bigint; updatedAt: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export declare namespace InitializedEvent { type InputTuple = [version: BigNumberish]; type OutputTuple = [version: bigint]; interface OutputObject { version: bigint; } type Event = TypedContractEvent<InputTuple, OutputTuple, OutputObject>; type Filter = TypedDeferredTopicFilter<Event>; type Log = TypedEventLog<Event>; type LogDescription = TypedLogDescription<Event>; } export interface RedStoneAbi extends BaseContract { connect(runner?: ContractRunner | null): RedStoneAbi; waitForDeployment(): Promise<this>; interface: RedStoneAbiInterface; queryFilter<TCEvent extends TypedContractEvent>(event: TCEvent, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>; queryFilter<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, fromBlockOrBlockhash?: string | number | undefined, toBlock?: string | number | undefined): Promise<Array<TypedEventLog<TCEvent>>>; on<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>; on<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>; once<TCEvent extends TypedContractEvent>(event: TCEvent, listener: TypedListener<TCEvent>): Promise<this>; once<TCEvent extends TypedContractEvent>(filter: TypedDeferredTopicFilter<TCEvent>, listener: TypedListener<TCEvent>): Promise<this>; listeners<TCEvent extends TypedContractEvent>(event: TCEvent): Promise<Array<TypedListener<TCEvent>>>; listeners(eventName?: string): Promise<Array<Listener>>; removeAllListeners<TCEvent extends TypedContractEvent>(event?: TCEvent): Promise<this>; aggregateValues: TypedContractMethod<[ values: BigNumberish[] ], [ bigint ], "view">; aggregator: TypedContractMethod<[], [string], "view">; decimals: TypedContractMethod<[], [bigint], "view">; description: TypedContractMethod<[], [string], "view">; extractTimestampsAndAssertAllAreEqual: TypedContractMethod<[ ], [ bigint ], "view">; getAllowedTimestampDiffsInSeconds: TypedContractMethod<[ ], [ [ bigint, bigint ] & { maxDataAheadSeconds: bigint; maxDataDelaySeconds: bigint; } ], "view">; getAuthorisedSignerIndex: TypedContractMethod<[ signerAddress: AddressLike ], [ bigint ], "view">; getBlockTimestamp: TypedContractMethod<[], [bigint], "view">; getBlockTimestampFromLatestUpdate: TypedContractMethod<[], [bigint], "view">; getDataFeedId: TypedContractMethod<[], [string], "view">; getDataFeedIds: TypedContractMethod<[], [string[]], "view">; getDataFeedIndex: TypedContractMethod<[ dataFeedId: BytesLike ], [ bigint ], "view">; getDataServiceId: TypedContractMethod<[], [string], "view">; getDataTimestampFromLatestUpdate: TypedContractMethod<[], [bigint], "view">; getLatestRoundId: TypedContractMethod<[], [bigint], "view">; getLatestRoundParams: TypedContractMethod<[ ], [ [ bigint, bigint, bigint ] & { latestRoundId: bigint; latestRoundDataTimestamp: bigint; latestRoundBlockTimestamp: bigint; } ], "view">; getMinIntervalBetweenUpdates: TypedContractMethod<[], [bigint], "view">; getPackedTimestampsForRound: TypedContractMethod<[ roundId: BigNumberish ], [ bigint ], "view">; getPackedTimestampsFromLatestUpdate: TypedContractMethod<[ ], [ bigint ], "view">; getPriceFeedAdapter: TypedContractMethod<[], [string], "view">; getPriceFeedAdapterWithRounds: TypedContractMethod<[], [string], "view">; getRoundData: TypedContractMethod<[ requestedRoundId: BigNumberish ], [ [ bigint, bigint, bigint, bigint, bigint ] & { roundId: bigint; answer: bigint; startedAt: bigint; updatedAt: bigint; answeredInRound: bigint; } ], "view">; getRoundDataFromAdapter: TypedContractMethod<[ dataFeedId: BytesLike, roundId: BigNumberish ], [ [ bigint, bigint, bigint ] & { dataFeedValue: bigint; roundDataTimestamp: bigint; roundBlockTimestamp: bigint; } ], "view">; getTimestampsFromLatestUpdate: TypedContractMethod<[ ], [ [bigint, bigint] & { dataTimestamp: bigint; blockTimestamp: bigint; } ], "view">; getUniqueSignersThreshold: TypedContractMethod<[], [bigint], "view">; getValueForDataFeed: TypedContractMethod<[ dataFeedId: BytesLike ], [ bigint ], "view">; getValueForDataFeedAndRound: TypedContractMethod<[ dataFeedId: BytesLike, roundId: BigNumberish ], [ bigint ], "view">; getValueForDataFeedUnsafe: TypedContractMethod<[ dataFeedId: BytesLike ], [ bigint ], "view">; getValuesForDataFeeds: TypedContractMethod<[ dataFeedIds: BytesLike[] ], [ bigint[] ], "view">; getValuesForDataFeedsUnsafe: TypedContractMethod<[ requestedDataFeedIds: BytesLike[] ], [ bigint[] ], "view">; initialize: TypedContractMethod<[], [void], "nonpayable">; latestAnswer: TypedContractMethod<[], [bigint], "view">; latestRound: TypedContractMethod<[], [bigint], "view">; latestRoundData: TypedContractMethod<[ ], [ [ bigint, bigint, bigint, bigint, bigint ] & { roundId: bigint; answer: bigint; startedAt: bigint; updatedAt: bigint; answeredInRound: bigint; } ], "view">; requireAuthorisedUpdater: TypedContractMethod<[ updater: AddressLike ], [ void ], "view">; updateDataFeedsValues: TypedContractMethod<[ dataPackagesTimestamp: BigNumberish ], [ void ], "nonpayable">; validateDataFeedValueOnRead: TypedContractMethod<[ dataFeedId: BytesLike, valueForDataFeed: BigNumberish ], [ void ], "view">; validateDataFeedValueOnWrite: TypedContractMethod<[ dataFeedId: BytesLike, valueForDataFeed: BigNumberish ], [ void ], "view">; validateDataPackagesTimestampOnce: TypedContractMethod<[ dataPackagesTimestamp: BigNumberish ], [ void ], "view">; validateProposedDataPackagesTimestamp: TypedContractMethod<[ dataPackagesTimestamp: BigNumberish ], [ void ], "view">; validateTimestamp: TypedContractMethod<[ receivedTimestampMilliseconds: BigNumberish ], [ void ], "view">; version: TypedContractMethod<[], [bigint], "view">; getFunction<T extends ContractMethod = ContractMethod>(key: string | FunctionFragment): T; getFunction(nameOrSignature: "aggregateValues"): TypedContractMethod<[values: BigNumberish[]], [bigint], "view">; getFunction(nameOrSignature: "aggregator"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "decimals"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "description"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "extractTimestampsAndAssertAllAreEqual"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getAllowedTimestampDiffsInSeconds"): TypedContractMethod<[ ], [ [ bigint, bigint ] & { maxDataAheadSeconds: bigint; maxDataDelaySeconds: bigint; } ], "view">; getFunction(nameOrSignature: "getAuthorisedSignerIndex"): TypedContractMethod<[signerAddress: AddressLike], [bigint], "view">; getFunction(nameOrSignature: "getBlockTimestamp"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getBlockTimestampFromLatestUpdate"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getDataFeedId"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getDataFeedIds"): TypedContractMethod<[], [string[]], "view">; getFunction(nameOrSignature: "getDataFeedIndex"): TypedContractMethod<[dataFeedId: BytesLike], [bigint], "view">; getFunction(nameOrSignature: "getDataServiceId"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getDataTimestampFromLatestUpdate"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getLatestRoundId"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getLatestRoundParams"): TypedContractMethod<[ ], [ [ bigint, bigint, bigint ] & { latestRoundId: bigint; latestRoundDataTimestamp: bigint; latestRoundBlockTimestamp: bigint; } ], "view">; getFunction(nameOrSignature: "getMinIntervalBetweenUpdates"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getPackedTimestampsForRound"): TypedContractMethod<[roundId: BigNumberish], [bigint], "view">; getFunction(nameOrSignature: "getPackedTimestampsFromLatestUpdate"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getPriceFeedAdapter"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getPriceFeedAdapterWithRounds"): TypedContractMethod<[], [string], "view">; getFunction(nameOrSignature: "getRoundData"): TypedContractMethod<[ requestedRoundId: BigNumberish ], [ [ bigint, bigint, bigint, bigint, bigint ] & { roundId: bigint; answer: bigint; startedAt: bigint; updatedAt: bigint; answeredInRound: bigint; } ], "view">; getFunction(nameOrSignature: "getRoundDataFromAdapter"): TypedContractMethod<[ dataFeedId: BytesLike, roundId: BigNumberish ], [ [ bigint, bigint, bigint ] & { dataFeedValue: bigint; roundDataTimestamp: bigint; roundBlockTimestamp: bigint; } ], "view">; getFunction(nameOrSignature: "getTimestampsFromLatestUpdate"): TypedContractMethod<[ ], [ [bigint, bigint] & { dataTimestamp: bigint; blockTimestamp: bigint; } ], "view">; getFunction(nameOrSignature: "getUniqueSignersThreshold"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "getValueForDataFeed"): TypedContractMethod<[dataFeedId: BytesLike], [bigint], "view">; getFunction(nameOrSignature: "getValueForDataFeedAndRound"): TypedContractMethod<[ dataFeedId: BytesLike, roundId: BigNumberish ], [ bigint ], "view">; getFunction(nameOrSignature: "getValueForDataFeedUnsafe"): TypedContractMethod<[dataFeedId: BytesLike], [bigint], "view">; getFunction(nameOrSignature: "getValuesForDataFeeds"): TypedContractMethod<[dataFeedIds: BytesLike[]], [bigint[]], "view">; getFunction(nameOrSignature: "getValuesForDataFeedsUnsafe"): TypedContractMethod<[ requestedDataFeedIds: BytesLike[] ], [ bigint[] ], "view">; getFunction(nameOrSignature: "initialize"): TypedContractMethod<[], [void], "nonpayable">; getFunction(nameOrSignature: "latestAnswer"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "latestRound"): TypedContractMethod<[], [bigint], "view">; getFunction(nameOrSignature: "latestRoundData"): TypedContractMethod<[ ], [ [ bigint, bigint, bigint, bigint, bigint ] & { roundId: bigint; answer: bigint; startedAt: bigint; updatedAt: bigint; answeredInRound: bigint; } ], "view">; getFunction(nameOrSignature: "requireAuthorisedUpdater"): TypedContractMethod<[updater: AddressLike], [void], "view">; getFunction(nameOrSignature: "updateDataFeedsValues"): TypedContractMethod<[ dataPackagesTimestamp: BigNumberish ], [ void ], "nonpayable">; getFunction(nameOrSignature: "validateDataFeedValueOnRead"): TypedContractMethod<[ dataFeedId: BytesLike, valueForDataFeed: BigNumberish ], [ void ], "view">; getFunction(nameOrSignature: "validateDataFeedValueOnWrite"): TypedContractMethod<[ dataFeedId: BytesLike, valueForDataFeed: BigNumberish ], [ void ], "view">; getFunction(nameOrSignature: "validateDataPackagesTimestampOnce"): TypedContractMethod<[dataPackagesTimestamp: BigNumberish], [void], "view">; getFunction(nameOrSignature: "validateProposedDataPackagesTimestamp"): TypedContractMethod<[dataPackagesTimestamp: BigNumberish], [void], "view">; getFunction(nameOrSignature: "validateTimestamp"): TypedContractMethod<[ receivedTimestampMilliseconds: BigNumberish ], [ void ], "view">; getFunction(nameOrSignature: "version"): TypedContractMethod<[], [bigint], "view">; getEvent(key: "AnswerUpdated"): TypedContractEvent<AnswerUpdatedEvent.InputTuple, AnswerUpdatedEvent.OutputTuple, AnswerUpdatedEvent.OutputObject>; getEvent(key: "Initialized"): TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>; filters: { "AnswerUpdated(int256,uint256,uint256)": TypedContractEvent<AnswerUpdatedEvent.InputTuple, AnswerUpdatedEvent.OutputTuple, AnswerUpdatedEvent.OutputObject>; AnswerUpdated: TypedContractEvent<AnswerUpdatedEvent.InputTuple, AnswerUpdatedEvent.OutputTuple, AnswerUpdatedEvent.OutputObject>; "Initialized(uint8)": TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>; Initialized: TypedContractEvent<InitializedEvent.InputTuple, InitializedEvent.OutputTuple, InitializedEvent.OutputObject>; }; }