@d8x/perpetuals-sdk
Version:
Node TypeScript SDK for D8X Perpetual Futures
766 lines (765 loc) • 26.5 kB
TypeScript
import { type ContractRunner } from "ethers";
import type { RedStoneAbi, RedStoneAbiInterface } from "../RedStoneAbi";
export declare class RedStoneAbi__factory {
static readonly abi: readonly [{
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "blockTimestamp";
readonly type: "uint256";
}];
readonly name: "BlockTimestampIsTooBig";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "CalldataMustHaveValidPayload";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "CalldataOverOrUnderFlow";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "CanNotPickMedianOfEmptyArray";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "CannotUpdateMoreThanOneDataFeed";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}];
readonly name: "DataFeedIdNotFound";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}];
readonly name: "DataFeedValueCannotBeZero";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "expectedDataTimestamp";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "dataPackageTimestamp";
readonly type: "uint256";
}];
readonly name: "DataPackageTimestampMismatch";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "DataPackageTimestampMustNotBeZero";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "DataPackageTimestampsMustBeEqual";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "dataTimestamp";
readonly type: "uint256";
}];
readonly name: "DataTimestampIsTooBig";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "receivedDataTimestampMilliseconds";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "lastDataTimestampMilliseconds";
readonly type: "uint256";
}];
readonly name: "DataTimestampShouldBeNewerThanBefore";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "EachSignerMustProvideTheSameValue";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "EmptyCalldataPointersArr";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "GetDataServiceIdNotImplemented";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "IncorrectUnsignedMetadataSize";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "receivedSignersCount";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "requiredSignersCount";
readonly type: "uint256";
}];
readonly name: "InsufficientNumberOfUniqueSigners";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "InvalidCalldataPointer";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "currentBlockTimestamp";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "lastUpdateTimestamp";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "minIntervalBetweenUpdates";
readonly type: "uint256";
}];
readonly name: "MinIntervalBetweenUpdatesHasNotPassedYet";
readonly type: "error";
}, {
readonly inputs: readonly [];
readonly name: "RedstonePayloadMustHaveAtLeastOneDataPackage";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "roundId";
readonly type: "uint256";
}];
readonly name: "RoundNotFound";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "receivedSigner";
readonly type: "address";
}];
readonly name: "SignerNotAuthorised";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "receivedTimestampSeconds";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "blockTimestamp";
readonly type: "uint256";
}];
readonly name: "TimestampFromTooLongFuture";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "receivedTimestampSeconds";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "blockTimestamp";
readonly type: "uint256";
}];
readonly name: "TimestampIsTooOld";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "value";
readonly type: "uint256";
}];
readonly name: "UnsafeUint256ToUint80Conversion";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "value";
readonly type: "uint256";
}];
readonly name: "UnsafeUintToIntConversion";
readonly type: "error";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "signer";
readonly type: "address";
}];
readonly name: "UpdaterNotAuthorised";
readonly type: "error";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: true;
readonly internalType: "int256";
readonly name: "current";
readonly type: "int256";
}, {
readonly indexed: true;
readonly internalType: "uint256";
readonly name: "roundId";
readonly type: "uint256";
}, {
readonly indexed: false;
readonly internalType: "uint256";
readonly name: "updatedAt";
readonly type: "uint256";
}];
readonly name: "AnswerUpdated";
readonly type: "event";
}, {
readonly anonymous: false;
readonly inputs: readonly [{
readonly indexed: false;
readonly internalType: "uint8";
readonly name: "version";
readonly type: "uint8";
}];
readonly name: "Initialized";
readonly type: "event";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "values";
readonly type: "uint256[]";
}];
readonly name: "aggregateValues";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "aggregator";
readonly outputs: readonly [{
readonly internalType: "address";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "decimals";
readonly outputs: readonly [{
readonly internalType: "uint8";
readonly name: "";
readonly type: "uint8";
}];
readonly stateMutability: "pure";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "description";
readonly outputs: readonly [{
readonly internalType: "string";
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "extractTimestampsAndAssertAllAreEqual";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "extractedTimestamp";
readonly type: "uint256";
}];
readonly stateMutability: "pure";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getAllowedTimestampDiffsInSeconds";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "maxDataAheadSeconds";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "maxDataDelaySeconds";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "signerAddress";
readonly type: "address";
}];
readonly name: "getAuthorisedSignerIndex";
readonly outputs: readonly [{
readonly internalType: "uint8";
readonly name: "";
readonly type: "uint8";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getBlockTimestamp";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getBlockTimestampFromLatestUpdate";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "blockTimestamp";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getDataFeedId";
readonly outputs: readonly [{
readonly internalType: "bytes32";
readonly name: "";
readonly type: "bytes32";
}];
readonly stateMutability: "pure";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getDataFeedIds";
readonly outputs: readonly [{
readonly internalType: "bytes32[]";
readonly name: "dataFeedIds";
readonly type: "bytes32[]";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}];
readonly name: "getDataFeedIndex";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getDataServiceId";
readonly outputs: readonly [{
readonly internalType: "string";
readonly name: "";
readonly type: "string";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getDataTimestampFromLatestUpdate";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "lastDataTimestamp";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getLatestRoundId";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "latestRoundId";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getLatestRoundParams";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "latestRoundId";
readonly type: "uint256";
}, {
readonly internalType: "uint128";
readonly name: "latestRoundDataTimestamp";
readonly type: "uint128";
}, {
readonly internalType: "uint128";
readonly name: "latestRoundBlockTimestamp";
readonly type: "uint128";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getMinIntervalBetweenUpdates";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "roundId";
readonly type: "uint256";
}];
readonly name: "getPackedTimestampsForRound";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "roundTimestamps";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getPackedTimestampsFromLatestUpdate";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "packedTimestamps";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getPriceFeedAdapter";
readonly outputs: readonly [{
readonly internalType: "contract IRedstoneAdapter";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getPriceFeedAdapterWithRounds";
readonly outputs: readonly [{
readonly internalType: "contract PriceFeedsAdapterWithRounds";
readonly name: "";
readonly type: "address";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint80";
readonly name: "requestedRoundId";
readonly type: "uint80";
}];
readonly name: "getRoundData";
readonly outputs: readonly [{
readonly internalType: "uint80";
readonly name: "roundId";
readonly type: "uint80";
}, {
readonly internalType: "int256";
readonly name: "answer";
readonly type: "int256";
}, {
readonly internalType: "uint256";
readonly name: "startedAt";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "updatedAt";
readonly type: "uint256";
}, {
readonly internalType: "uint80";
readonly name: "answeredInRound";
readonly type: "uint80";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}, {
readonly internalType: "uint256";
readonly name: "roundId";
readonly type: "uint256";
}];
readonly name: "getRoundDataFromAdapter";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "dataFeedValue";
readonly type: "uint256";
}, {
readonly internalType: "uint128";
readonly name: "roundDataTimestamp";
readonly type: "uint128";
}, {
readonly internalType: "uint128";
readonly name: "roundBlockTimestamp";
readonly type: "uint128";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getTimestampsFromLatestUpdate";
readonly outputs: readonly [{
readonly internalType: "uint128";
readonly name: "dataTimestamp";
readonly type: "uint128";
}, {
readonly internalType: "uint128";
readonly name: "blockTimestamp";
readonly type: "uint128";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "getUniqueSignersThreshold";
readonly outputs: readonly [{
readonly internalType: "uint8";
readonly name: "";
readonly type: "uint8";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}];
readonly name: "getValueForDataFeed";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}, {
readonly internalType: "uint256";
readonly name: "roundId";
readonly type: "uint256";
}];
readonly name: "getValueForDataFeedAndRound";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "dataFeedValue";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}];
readonly name: "getValueForDataFeedUnsafe";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "dataFeedValue";
readonly type: "uint256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32[]";
readonly name: "dataFeedIds";
readonly type: "bytes32[]";
}];
readonly name: "getValuesForDataFeeds";
readonly outputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "";
readonly type: "uint256[]";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32[]";
readonly name: "requestedDataFeedIds";
readonly type: "bytes32[]";
}];
readonly name: "getValuesForDataFeedsUnsafe";
readonly outputs: readonly [{
readonly internalType: "uint256[]";
readonly name: "values";
readonly type: "uint256[]";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "initialize";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "latestAnswer";
readonly outputs: readonly [{
readonly internalType: "int256";
readonly name: "";
readonly type: "int256";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "latestRound";
readonly outputs: readonly [{
readonly internalType: "uint80";
readonly name: "";
readonly type: "uint80";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "latestRoundData";
readonly outputs: readonly [{
readonly internalType: "uint80";
readonly name: "roundId";
readonly type: "uint80";
}, {
readonly internalType: "int256";
readonly name: "answer";
readonly type: "int256";
}, {
readonly internalType: "uint256";
readonly name: "startedAt";
readonly type: "uint256";
}, {
readonly internalType: "uint256";
readonly name: "updatedAt";
readonly type: "uint256";
}, {
readonly internalType: "uint80";
readonly name: "answeredInRound";
readonly type: "uint80";
}];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "address";
readonly name: "updater";
readonly type: "address";
}];
readonly name: "requireAuthorisedUpdater";
readonly outputs: readonly [];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "dataPackagesTimestamp";
readonly type: "uint256";
}];
readonly name: "updateDataFeedsValues";
readonly outputs: readonly [];
readonly stateMutability: "nonpayable";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}, {
readonly internalType: "uint256";
readonly name: "valueForDataFeed";
readonly type: "uint256";
}];
readonly name: "validateDataFeedValueOnRead";
readonly outputs: readonly [];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "bytes32";
readonly name: "dataFeedId";
readonly type: "bytes32";
}, {
readonly internalType: "uint256";
readonly name: "valueForDataFeed";
readonly type: "uint256";
}];
readonly name: "validateDataFeedValueOnWrite";
readonly outputs: readonly [];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "dataPackagesTimestamp";
readonly type: "uint256";
}];
readonly name: "validateDataPackagesTimestampOnce";
readonly outputs: readonly [];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "dataPackagesTimestamp";
readonly type: "uint256";
}];
readonly name: "validateProposedDataPackagesTimestamp";
readonly outputs: readonly [];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [{
readonly internalType: "uint256";
readonly name: "receivedTimestampMilliseconds";
readonly type: "uint256";
}];
readonly name: "validateTimestamp";
readonly outputs: readonly [];
readonly stateMutability: "view";
readonly type: "function";
}, {
readonly inputs: readonly [];
readonly name: "version";
readonly outputs: readonly [{
readonly internalType: "uint256";
readonly name: "";
readonly type: "uint256";
}];
readonly stateMutability: "pure";
readonly type: "function";
}];
static createInterface(): RedStoneAbiInterface;
static connect(address: string, runner?: ContractRunner | null): RedStoneAbi;
}