import * as $protobuf from "protobufjs"; import Long = require("long"); /** Namespace oracle_job. */ export namespace oracle_job { /** Properties of an OracleFeed. */ interface IOracleFeed { /** OracleFeed name */ name?: (string|null); /** A list of jobs to be performed by the oracle. */ jobs?: (oracle_job.IOracleJob[]|null); /** The number of oracles to sample before returning a result. */ minOracleSamples?: (number|null); /** The minimum number of jobs required to succeed in order to produce a result. */ minJobResponses?: (number|null); /** Maximum allowed percentage deviation between job responses. */ maxJobRangePct?: (number|Long|null); } /** Represents a complete feed schema to be performed by a Switchboard oracle. */ class OracleFeed implements IOracleFeed { /** * Constructs a new OracleFeed. * @param [properties] Properties to set */ private constructor(properties?: oracle_job.IOracleFeed); /** OracleFeed name. */ public name: string; /** A list of jobs to be performed by the oracle. */ public jobs: oracle_job.IOracleJob[]; /** The number of oracles to sample before returning a result. */ public minOracleSamples: number; /** The minimum number of jobs required to succeed in order to produce a result. */ public minJobResponses: number; /** Maximum allowed percentage deviation between job responses. */ public maxJobRangePct: (number|Long); /** * Creates a new OracleFeed instance using the specified properties. * @param [properties] Properties to set * @returns OracleFeed instance */ public static create(properties?: oracle_job.IOracleFeed): oracle_job.OracleFeed; /** * Encodes the specified OracleFeed message. Does not implicitly {@link oracle_job.OracleFeed.verify|verify} messages. * @param message OracleFeed message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.IOracleFeed, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified OracleFeed message, length delimited. Does not implicitly {@link oracle_job.OracleFeed.verify|verify} messages. * @param message OracleFeed message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.IOracleFeed, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an OracleFeed message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns OracleFeed * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleFeed; /** * Decodes an OracleFeed message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns OracleFeed * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleFeed; /** * Verifies an OracleFeed message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an OracleFeed message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns OracleFeed */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleFeed; /** * Creates a plain object from an OracleFeed message. Also converts values to other types if specified. * @param message OracleFeed * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleFeed, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this OracleFeed to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for OracleFeed * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OracleJob. */ interface IOracleJob { /** The chain of tasks to perform for this OracleJob. */ tasks?: (oracle_job.OracleJob.ITask[]|null); /** * The weight to assign to this job's result when aggregating multiple job results. A higher * weight means this job's result will have more influence on the final aggregated value. This * value must be greater than or equal to 0. */ weight?: (number|null); } /** Represnts a list of tasks to be performed by a Switchboard oracle. */ class OracleJob implements IOracleJob { /** * Constructs a new OracleJob. * @param [properties] Properties to set */ constructor(properties?: oracle_job.IOracleJob); /** The chain of tasks to perform for this OracleJob. */ public tasks: oracle_job.OracleJob.ITask[]; /** * The weight to assign to this job's result when aggregating multiple job results. A higher * weight means this job's result will have more influence on the final aggregated value. This * value must be greater than or equal to 0. */ public weight: number; /** * Creates a new OracleJob instance using the specified properties. * @param [properties] Properties to set * @returns OracleJob instance */ /** * Creates a new OracleJob instance from a stringified yaml object. * @param [yamlString] stringified yaml object * @returns OracleJob instance */ public static fromYaml(yamlString: string): OracleJob; /** * Converts an OracleJob instance to a stringified yaml object. * @returns stringified yaml object */ public toYaml(): string; public static create(properties?: oracle_job.IOracleJob): oracle_job.OracleJob; /** * Encodes the specified OracleJob message. Does not implicitly {@link oracle_job.OracleJob.verify|verify} messages. * @param message OracleJob message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.IOracleJob, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified OracleJob message, length delimited. Does not implicitly {@link oracle_job.OracleJob.verify|verify} messages. * @param message OracleJob message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.IOracleJob, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an OracleJob message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns OracleJob * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob; /** * Decodes an OracleJob message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns OracleJob * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob; /** * Verifies an OracleJob message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an OracleJob message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns OracleJob */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob; /** * Creates a plain object from an OracleJob message. Also converts values to other types if specified. * @param message OracleJob * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this OracleJob to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for OracleJob * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace OracleJob { /** Properties of a HttpTask. */ interface IHttpTask { /** A string containing the URL to direct this HTTP request to. */ url?: (string|null); /** The type of HTTP request to make. */ method?: (oracle_job.OracleJob.HttpTask.Method|null); /** A list of headers to add to this HttpTask. */ headers?: (oracle_job.OracleJob.HttpTask.IHeader[]|null); /** A stringified body (if any) to add to this HttpTask. */ body?: (string|null); } /** * The adapter will report the text body of a successful HTTP request to the * specified url, or return an error if the response status code is greater * than or equal to 400. * * _**Input**_: None * * _**Returns**_: String representation of the http response. * * _**Example**_: Basic HttpTask * * ```json * {"httpTask": {"url": "https://mywebsite.org/path"} } * ``` * * _**Example**_: HttpTask example with headers * * ```json * { "httpTask": { "url": "https://mywebsite.org/path", "method": "METHOD_POST", "headers": [ { "key": "MY_HEADER_KEY", "value": "MY_HEADER_VALUE" } ], "body": "{\"MY_BODY_KEY\":\"MY_BODY_VALUE\"}" } } * ``` */ class HttpTask implements IHttpTask { /** * Constructs a new HttpTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IHttpTask); /** A string containing the URL to direct this HTTP request to. */ public url: string; /** The type of HTTP request to make. */ public method: oracle_job.OracleJob.HttpTask.Method; /** A list of headers to add to this HttpTask. */ public headers: oracle_job.OracleJob.HttpTask.IHeader[]; /** A stringified body (if any) to add to this HttpTask. */ public body: string; /** * Creates a new HttpTask instance using the specified properties. * @param [properties] Properties to set * @returns HttpTask instance */ public static create(properties?: oracle_job.OracleJob.IHttpTask): oracle_job.OracleJob.HttpTask; /** * Encodes the specified HttpTask message. Does not implicitly {@link oracle_job.OracleJob.HttpTask.verify|verify} messages. * @param message HttpTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IHttpTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified HttpTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.HttpTask.verify|verify} messages. * @param message HttpTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IHttpTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a HttpTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns HttpTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.HttpTask; /** * Decodes a HttpTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns HttpTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.HttpTask; /** * Verifies a HttpTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a HttpTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns HttpTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.HttpTask; /** * Creates a plain object from a HttpTask message. Also converts values to other types if specified. * @param message HttpTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.HttpTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this HttpTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for HttpTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace HttpTask { /** An enumeration representing the types of HTTP requests available to make. */ enum Method { METHOD_UNKOWN = 0, METHOD_GET = 1, METHOD_POST = 2 } /** Properties of a Header. */ interface IHeader { /** A header key such as `Authorization` or `Content-Type` */ key?: (string|null); /** A value for the given header key like `Basic MYAUTHKEY` or `application/json` */ value?: (string|null); } /** An object that represents a header to add to an HTTP request. */ class Header implements IHeader { /** * Constructs a new Header. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.HttpTask.IHeader); /** A header key such as `Authorization` or `Content-Type` */ public key: string; /** A value for the given header key like `Basic MYAUTHKEY` or `application/json` */ public value: string; /** * Creates a new Header instance using the specified properties. * @param [properties] Properties to set * @returns Header instance */ public static create(properties?: oracle_job.OracleJob.HttpTask.IHeader): oracle_job.OracleJob.HttpTask.Header; /** * Encodes the specified Header message. Does not implicitly {@link oracle_job.OracleJob.HttpTask.Header.verify|verify} messages. * @param message Header message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.HttpTask.IHeader, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified Header message, length delimited. Does not implicitly {@link oracle_job.OracleJob.HttpTask.Header.verify|verify} messages. * @param message Header message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.HttpTask.IHeader, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a Header message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns Header * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.HttpTask.Header; /** * Decodes a Header message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns Header * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.HttpTask.Header; /** * Verifies a Header message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a Header message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns Header */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.HttpTask.Header; /** * Creates a plain object from a Header message. Also converts values to other types if specified. * @param message Header * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.HttpTask.Header, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this Header to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for Header * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } } /** Properties of a JsonParseTask. */ interface IJsonParseTask { /** * JSONPath formatted path to the element. https://t.ly/uLtw * https://www.npmjs.com/package/jsonpath-plus */ path?: (string|null); /** The technique that will be used to aggregate the results if walking the specified path returns multiple numerical results. */ aggregationMethod?: (oracle_job.OracleJob.JsonParseTask.AggregationMethod|null); } /** * The adapter walks the path specified and returns the value found at that result. If returning * JSON data from the HttpGet or HttpPost adapters, you must use this adapter to parse the response. * * _**Input**_: String representation of a JSON object. * * _**Returns**_: A numerical result. * * _**Example**_: Parses the price field from a JSON object * * ```json * {"jsonParse": {"path": "$.price"} } * ``` */ class JsonParseTask implements IJsonParseTask { /** * Constructs a new JsonParseTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IJsonParseTask); /** * JSONPath formatted path to the element. https://t.ly/uLtw * https://www.npmjs.com/package/jsonpath-plus */ public path: string; /** The technique that will be used to aggregate the results if walking the specified path returns multiple numerical results. */ public aggregationMethod: oracle_job.OracleJob.JsonParseTask.AggregationMethod; /** * Creates a new JsonParseTask instance using the specified properties. * @param [properties] Properties to set * @returns JsonParseTask instance */ public static create(properties?: oracle_job.OracleJob.IJsonParseTask): oracle_job.OracleJob.JsonParseTask; /** * Encodes the specified JsonParseTask message. Does not implicitly {@link oracle_job.OracleJob.JsonParseTask.verify|verify} messages. * @param message JsonParseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IJsonParseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified JsonParseTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.JsonParseTask.verify|verify} messages. * @param message JsonParseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IJsonParseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a JsonParseTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns JsonParseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.JsonParseTask; /** * Decodes a JsonParseTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns JsonParseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.JsonParseTask; /** * Verifies a JsonParseTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a JsonParseTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns JsonParseTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.JsonParseTask; /** * Creates a plain object from a JsonParseTask message. Also converts values to other types if specified. * @param message JsonParseTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.JsonParseTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this JsonParseTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for JsonParseTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace JsonParseTask { /** The methods of combining a list of numerical results. */ enum AggregationMethod { NONE = 0, MIN = 1, MAX = 2, SUM = 3, MEAN = 4, MEDIAN = 5 } } /** Properties of a MedianTask. */ interface IMedianTask { /** A list of subtasks to process and produce a list of result values. */ tasks?: (oracle_job.OracleJob.ITask[]|null); /** A list of subjobs to process and produce a list of result values. */ jobs?: (oracle_job.IOracleJob[]|null); /** The minimum number of values before a successful median can be yielded. */ minSuccessfulRequired?: (number|null); /** The maximum range between the minimum and maximum values before a successful median can be yielded. */ maxRangePercent?: (string|null); } /** * Returns the median (middle) of all the results returned by the provided subtasks and subjobs. Nested tasks must return a Number. * * _**Input**_: None * * _**Returns**_: A numerical result. * * _**Example**_: Returns the median numerical result of 3 tasks. * * ```json * {"medianTask": {"tasks": [{"valueTask": {"value": 10}},{"valueTask": {"value": 20}},{"valueTask": {"value": 30}}]}} * ``` * * _**Example**_: Returns the median numerical result of 3 jobs. * * ```json * {"medianTask": {"jobs": [{"tasks": [{"httpTask": {"url": "https://www.binance.com/api/v3/ticker/price?symbol=SOLUSDT"}},{"jsonParseTask": {"path": "$.price"}}]},{"tasks": [{"httpTask": {"url": "https://www.binance.us/api/v3/ticker/price?symbol=SOLUSD"}},{"jsonParseTask": {"path": "$.price"}}]},{"tasks": [{"httpTask": {"url": "https://api-pub.bitfinex.com/v2/tickers?symbols=tSOLUSD"}},{"jsonParseTask": {"path": "$[0][7]"}}]}]}} * ``` */ class MedianTask implements IMedianTask { /** * Constructs a new MedianTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMedianTask); /** A list of subtasks to process and produce a list of result values. */ public tasks: oracle_job.OracleJob.ITask[]; /** A list of subjobs to process and produce a list of result values. */ public jobs: oracle_job.IOracleJob[]; /** The minimum number of values before a successful median can be yielded. */ public minSuccessfulRequired: number; /** The maximum range between the minimum and maximum values before a successful median can be yielded. */ public maxRangePercent: string; /** * Creates a new MedianTask instance using the specified properties. * @param [properties] Properties to set * @returns MedianTask instance */ public static create(properties?: oracle_job.OracleJob.IMedianTask): oracle_job.OracleJob.MedianTask; /** * Encodes the specified MedianTask message. Does not implicitly {@link oracle_job.OracleJob.MedianTask.verify|verify} messages. * @param message MedianTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMedianTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MedianTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MedianTask.verify|verify} messages. * @param message MedianTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMedianTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MedianTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MedianTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MedianTask; /** * Decodes a MedianTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MedianTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MedianTask; /** * Verifies a MedianTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MedianTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MedianTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MedianTask; /** * Creates a plain object from a MedianTask message. Also converts values to other types if specified. * @param message MedianTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MedianTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MedianTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MedianTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MeanTask. */ interface IMeanTask { /** A list of subtasks to process and produce a list of result values. */ tasks?: (oracle_job.OracleJob.ITask[]|null); /** A list of subjobs to process and produce a list of result values. */ jobs?: (oracle_job.IOracleJob[]|null); } /** * Returns the mean (average) of all the results returned by the provided subtasks and subjobs. Nested tasks or jobs must return a Number. * * _**Input**_: None * * _**Returns**_: A numerical result. * * _**Example**_: Returns the mean numerical result of 3 tasks. * * ```json * {"meanTask": {"tasks": [{"valueTask": {"value": 10}},{"valueTask": {"value": 20}},{"valueTask": {"value": 30}}]}} * ``` * * _**Example**_: Returns the mean numerical result of 3 jobs. * * ```json * {"meanTask": {"jobs": [{"tasks": [{"httpTask": {"url": "https://www.binance.com/api/v3/ticker/price?symbol=SOLUSDT"}},{"jsonParseTask": {"path": "$.price"}}]},{"tasks": [{"httpTask": {"url": "https://www.binance.us/api/v3/ticker/price?symbol=SOLUSD"}},{"jsonParseTask": {"path": "$.price"}}]},{"tasks": [{"httpTask": {"url": "https://api-pub.bitfinex.com/v2/tickers?symbols=tSOLUSD"}},{"jsonParseTask": {"path": "$[0][7]"}}]}]}} * ``` */ class MeanTask implements IMeanTask { /** * Constructs a new MeanTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMeanTask); /** A list of subtasks to process and produce a list of result values. */ public tasks: oracle_job.OracleJob.ITask[]; /** A list of subjobs to process and produce a list of result values. */ public jobs: oracle_job.IOracleJob[]; /** * Creates a new MeanTask instance using the specified properties. * @param [properties] Properties to set * @returns MeanTask instance */ public static create(properties?: oracle_job.OracleJob.IMeanTask): oracle_job.OracleJob.MeanTask; /** * Encodes the specified MeanTask message. Does not implicitly {@link oracle_job.OracleJob.MeanTask.verify|verify} messages. * @param message MeanTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMeanTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MeanTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MeanTask.verify|verify} messages. * @param message MeanTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMeanTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MeanTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MeanTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MeanTask; /** * Decodes a MeanTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MeanTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MeanTask; /** * Verifies a MeanTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MeanTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MeanTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MeanTask; /** * Creates a plain object from a MeanTask message. Also converts values to other types if specified. * @param message MeanTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MeanTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MeanTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MeanTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MaxTask. */ interface IMaxTask { /** A list of subtasks to process and produce a list of result values. */ tasks?: (oracle_job.OracleJob.ITask[]|null); /** A list of subjobs to process and produce a list of result values. */ jobs?: (oracle_job.IOracleJob[]|null); } /** * Returns the maximum value of all the results returned by the provided subtasks and subjobs. Nested tasks or jobs must return a Number. * * _**Input**_: None * * _**Returns**_: A numerical result. * * _**Example**_: Returns the maximum numerical result from 3 tasks. * * ```json * {"maxTask": {"tasks": [{"valueTask": {"value": 10}},{"valueTask": {"value": 20}},{"valueTask": {"value": 30}}]}} * ``` * * _**Example**_: Returns the maximum numerical result from 3 jobs. * * ```json * {"maxTask": {"jobs": [{"tasks": [{"httpTask": {"url": "https://www.binance.com/api/v3/ticker/price?symbol=SOLUSDT"}},{"jsonParseTask": {"path": "$.price"}}]},{"tasks": [{"httpTask": {"url": "https://www.binance.us/api/v3/ticker/price?symbol=SOLUSD"}},{"jsonParseTask": {"path": "$.price"}}]},{"tasks": [{"httpTask": {"url": "https://api-pub.bitfinex.com/v2/tickers?symbols=tSOLUSD"}},{"jsonParseTask": {"path": "$[0][7]"}}]}]}} * ``` */ class MaxTask implements IMaxTask { /** * Constructs a new MaxTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMaxTask); /** A list of subtasks to process and produce a list of result values. */ public tasks: oracle_job.OracleJob.ITask[]; /** A list of subjobs to process and produce a list of result values. */ public jobs: oracle_job.IOracleJob[]; /** * Creates a new MaxTask instance using the specified properties. * @param [properties] Properties to set * @returns MaxTask instance */ public static create(properties?: oracle_job.OracleJob.IMaxTask): oracle_job.OracleJob.MaxTask; /** * Encodes the specified MaxTask message. Does not implicitly {@link oracle_job.OracleJob.MaxTask.verify|verify} messages. * @param message MaxTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMaxTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MaxTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MaxTask.verify|verify} messages. * @param message MaxTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMaxTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MaxTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MaxTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MaxTask; /** * Decodes a MaxTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MaxTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MaxTask; /** * Verifies a MaxTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MaxTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MaxTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MaxTask; /** * Creates a plain object from a MaxTask message. Also converts values to other types if specified. * @param message MaxTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MaxTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MaxTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MaxTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MinTask. */ interface IMinTask { /** A list of subtasks to process and produce a list of result values. */ tasks?: (oracle_job.OracleJob.ITask[]|null); /** A list of subjobs to process and produce a list of result values. */ jobs?: (oracle_job.IOracleJob[]|null); } /** * Returns the minimum value of all the results returned by the provided subtasks and subjobs. Nested tasks or jobs must return a Number. * * _**Input**_: None * * _**Returns**_: A numerical result. * * _**Example**_: Returns the minimum numerical result from 3 tasks. * * ```json * {"minTask": {"tasks": [{"valueTask": {"value": 10}},{"valueTask": {"value": 20}},{"valueTask": {"value": 30}}]}} * ``` * * _**Example**_: Returns the minimum numerical result from 3 jobs. * * ```json * {"minTask": {"jobs": [{"tasks": [{"httpTask": {"url": "https://www.binance.com/api/v3/ticker/price?symbol=SOLUSDT"}},{"jsonParseTask": {"path": "$.price"}}]},{"tasks": [{"httpTask": {"url": "https://www.binance.us/api/v3/ticker/price?symbol=SOLUSD"}},{"jsonParseTask": {"path": "$.price"}}]},{"tasks": [{"httpTask": {"url": "https://api-pub.bitfinex.com/v2/tickers?symbols=tSOLUSD"}},{"jsonParseTask": {"path": "$[0][7]"}}]}]}} * ``` */ class MinTask implements IMinTask { /** * Constructs a new MinTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMinTask); /** A list of subtasks to process and produce a list of result values. */ public tasks: oracle_job.OracleJob.ITask[]; /** A list of subjobs to process and produce a list of result values. */ public jobs: oracle_job.IOracleJob[]; /** * Creates a new MinTask instance using the specified properties. * @param [properties] Properties to set * @returns MinTask instance */ public static create(properties?: oracle_job.OracleJob.IMinTask): oracle_job.OracleJob.MinTask; /** * Encodes the specified MinTask message. Does not implicitly {@link oracle_job.OracleJob.MinTask.verify|verify} messages. * @param message MinTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMinTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MinTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MinTask.verify|verify} messages. * @param message MinTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMinTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MinTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MinTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MinTask; /** * Decodes a MinTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MinTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MinTask; /** * Verifies a MinTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MinTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MinTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MinTask; /** * Creates a plain object from a MinTask message. Also converts values to other types if specified. * @param message MinTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MinTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MinTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MinTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ValueTask. */ interface IValueTask { /** The value that will be returned from this task. */ value?: (number|null); /** Specifies an aggregatorr to pull the value of. */ aggregatorPubkey?: (string|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ big?: (string|null); /** A stringified hex number (0x prefix is optional). */ hex?: (string|null); /** A utf8 string. */ utf8?: (string|null); } /** * Returns a specified value. * * _**Input**_: None * * _**Returns**_: A numerical result. * * _**Example**_: Returns the value 10 * * ```json * {"valueTask": {"value": 10} } * ``` * * _**Example**_: Returns the currentRound result of an aggregator * * ```json * {"valueTask": {"aggregatorPubkey": "GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR"} } * ``` * * _**Example**_: Returns the value stored in a CacheTask variable * * ```json * {"valueTask": {"big": "${ONE}"} } * ``` */ class ValueTask implements IValueTask { /** * Constructs a new ValueTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IValueTask); /** The value that will be returned from this task. */ public value?: (number|null); /** Specifies an aggregatorr to pull the value of. */ public aggregatorPubkey?: (string|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ public big?: (string|null); /** A stringified hex number (0x prefix is optional). */ public hex?: (string|null); /** A utf8 string. */ public utf8?: (string|null); /** ValueTask Value. */ public Value?: ("value"|"aggregatorPubkey"|"big"|"hex"|"utf8"); /** * Creates a new ValueTask instance using the specified properties. * @param [properties] Properties to set * @returns ValueTask instance */ public static create(properties?: oracle_job.OracleJob.IValueTask): oracle_job.OracleJob.ValueTask; /** * Encodes the specified ValueTask message. Does not implicitly {@link oracle_job.OracleJob.ValueTask.verify|verify} messages. * @param message ValueTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IValueTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified ValueTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.ValueTask.verify|verify} messages. * @param message ValueTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IValueTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a ValueTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns ValueTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.ValueTask; /** * Decodes a ValueTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns ValueTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.ValueTask; /** * Verifies a ValueTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a ValueTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns ValueTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.ValueTask; /** * Creates a plain object from a ValueTask message. Also converts values to other types if specified. * @param message ValueTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.ValueTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this ValueTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for ValueTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a WebsocketTask. */ interface IWebsocketTask { /** The websocket url. */ url?: (string|null); /** The websocket message to notify of a new subscription. */ subscription?: (string|null); /** Minimum amount of time required between when the horses are taking out. */ maxDataAgeSeconds?: (number|null); /** * Incoming message JSONPath filter. * Example: "$[?(@.channel == 'ticker' && @.market == 'BTC/USD')]" */ filter?: (string|null); } /** * Opens and maintains a websocket for light speed data retrieval. * * _**Input**_: None * * _**Returns**_: String representation of the websocket subscription message. * * _**Example**_: Opens a coinbase websocket * * ```json * { "websocketTask": { "url": "wss://ws-feed.pro.coinbase.com", "subscription": "{\"type\":\"subscribe\",\"product_ids\":[\"BTC-USD\"],\"channels\":[\"ticker\",{\"name\":\"ticker\",\"product_ids\":[\"BTC-USD\"]}]}", "maxDataAgeSeconds": 15, "filter": "$[?(@.type == 'ticker' && @.product_id == 'BTC-USD')]" } } * ``` */ class WebsocketTask implements IWebsocketTask { /** * Constructs a new WebsocketTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IWebsocketTask); /** The websocket url. */ public url: string; /** The websocket message to notify of a new subscription. */ public subscription: string; /** Minimum amount of time required between when the horses are taking out. */ public maxDataAgeSeconds: number; /** * Incoming message JSONPath filter. * Example: "$[?(@.channel == 'ticker' && @.market == 'BTC/USD')]" */ public filter: string; /** * Creates a new WebsocketTask instance using the specified properties. * @param [properties] Properties to set * @returns WebsocketTask instance */ public static create(properties?: oracle_job.OracleJob.IWebsocketTask): oracle_job.OracleJob.WebsocketTask; /** * Encodes the specified WebsocketTask message. Does not implicitly {@link oracle_job.OracleJob.WebsocketTask.verify|verify} messages. * @param message WebsocketTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IWebsocketTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified WebsocketTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.WebsocketTask.verify|verify} messages. * @param message WebsocketTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IWebsocketTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a WebsocketTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns WebsocketTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.WebsocketTask; /** * Decodes a WebsocketTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns WebsocketTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.WebsocketTask; /** * Verifies a WebsocketTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a WebsocketTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns WebsocketTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.WebsocketTask; /** * Creates a plain object from a WebsocketTask message. Also converts values to other types if specified. * @param message WebsocketTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.WebsocketTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this WebsocketTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for WebsocketTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ConditionalTask. */ interface IConditionalTask { /** A list of subtasks to process in an attempt to produce a valid numerical result. */ attempt?: (oracle_job.OracleJob.ITask[]|null); /** * A list of subtasks that will be run if `attempt` subtasks are unable to produce an acceptable * result. */ onFailure?: (oracle_job.OracleJob.ITask[]|null); } /** * This task will run the `attempt` on the subtasks in an effort to produce a valid numerical result. If `attempt`. fails to produce an acceptable result, `on_failure` subtasks will be run instead. * * _**Input**_: The current running numerical result output from a task. * * _**Returns**_: A numerical result, else run `on_failure` subtasks. * * _**Example**_: Returns the numerical result from the conditionalTask's subtasks, else `on_failure` returns the numerical result from its subtasks. * * ```json * {"conditionalTask":{"attempt":[{"tasks":[{"jupiterSwapTask":{"inTokenAddress":"EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v","outTokenAddress":"DUALa4FC2yREwZ59PHeu1un4wis36vHRv5hWVBmzykCJ"}}]}],"onFailure":[{"lpExchangeRateTask":{"orcaPoolAddress":"7yJ4gMRJhEoCR48aPE3EAWRmCoygakik81ZS1sajaTnE"}}]}} * ``` */ class ConditionalTask implements IConditionalTask { /** * Constructs a new ConditionalTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IConditionalTask); /** A list of subtasks to process in an attempt to produce a valid numerical result. */ public attempt: oracle_job.OracleJob.ITask[]; /** * A list of subtasks that will be run if `attempt` subtasks are unable to produce an acceptable * result. */ public onFailure: oracle_job.OracleJob.ITask[]; /** * Creates a new ConditionalTask instance using the specified properties. * @param [properties] Properties to set * @returns ConditionalTask instance */ public static create(properties?: oracle_job.OracleJob.IConditionalTask): oracle_job.OracleJob.ConditionalTask; /** * Encodes the specified ConditionalTask message. Does not implicitly {@link oracle_job.OracleJob.ConditionalTask.verify|verify} messages. * @param message ConditionalTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IConditionalTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified ConditionalTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.ConditionalTask.verify|verify} messages. * @param message ConditionalTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IConditionalTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a ConditionalTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns ConditionalTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.ConditionalTask; /** * Decodes a ConditionalTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns ConditionalTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.ConditionalTask; /** * Verifies a ConditionalTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a ConditionalTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns ConditionalTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.ConditionalTask; /** * Creates a plain object from a ConditionalTask message. Also converts values to other types if specified. * @param message ConditionalTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.ConditionalTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this ConditionalTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for ConditionalTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a DivideTask. */ interface IDivideTask { /** Specifies a basic scalar denominator to divide by. */ scalar?: (number|null); /** Specifies another aggregator resut to divide by. */ aggregatorPubkey?: (string|null); /** A job whose result is computed before dividing our numerical input by that result. */ job?: (oracle_job.IOracleJob|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ big?: (string|null); } /** * This task will divide a numerical input by a scalar value from a job of subtasks, an aggregator, or a big. * * _**Input**_: The current running numerical result output from a scalar value, an aggregator, a job of subtasks or a big. * * _**Returns**_: A numerical result. * * _**Example**_: Returns the numerical result by dividing by a job of subtasks. * * ```json * {"tasks":[{"valueTask":{"value":100}},{"divideTask":{"job":{"tasks":[{"valueTask":{"value":10}}]}}}]} * ``` * * _**Example**_: Returns the numerical result by dividing by an aggregator. * * ```json * {"tasks":[{"valueTask":{"value":100}},{"divideTask":{"aggregatorPubkey":"GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR"}}]} * ``` * * _**Example**_: Returns the numerical result by dividing by a big. * * ```json * {"tasks":[{"cacheTask":{"cacheItems":[{"variableName":"TEN","job":{"tasks":[{"valueTask":{"value":10}}]}}]}},{"valueTask":{"value":100}},{"divideTask":{"big":"${TEN}"}}]} * ``` */ class DivideTask implements IDivideTask { /** * Constructs a new DivideTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IDivideTask); /** Specifies a basic scalar denominator to divide by. */ public scalar?: (number|null); /** Specifies another aggregator resut to divide by. */ public aggregatorPubkey?: (string|null); /** A job whose result is computed before dividing our numerical input by that result. */ public job?: (oracle_job.IOracleJob|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ public big?: (string|null); /** DivideTask Denominator. */ public Denominator?: ("scalar"|"aggregatorPubkey"|"job"|"big"); /** * Creates a new DivideTask instance using the specified properties. * @param [properties] Properties to set * @returns DivideTask instance */ public static create(properties?: oracle_job.OracleJob.IDivideTask): oracle_job.OracleJob.DivideTask; /** * Encodes the specified DivideTask message. Does not implicitly {@link oracle_job.OracleJob.DivideTask.verify|verify} messages. * @param message DivideTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IDivideTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified DivideTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.DivideTask.verify|verify} messages. * @param message DivideTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IDivideTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a DivideTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns DivideTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.DivideTask; /** * Decodes a DivideTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns DivideTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.DivideTask; /** * Verifies a DivideTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a DivideTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns DivideTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.DivideTask; /** * Creates a plain object from a DivideTask message. Also converts values to other types if specified. * @param message DivideTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.DivideTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this DivideTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for DivideTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MultiplyTask. */ interface IMultiplyTask { /** Specifies a scalar to multiply by. */ scalar?: (number|null); /** Specifies an aggregator to multiply by. */ aggregatorPubkey?: (string|null); /** A job whose result is computed before multiplying our numerical input by that result. */ job?: (oracle_job.IOracleJob|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ big?: (string|null); } /** * This task will multiply a numerical input by a scalar value from a job of subtasks, an aggregator, or a big. * * _**Input**_: The current running numerical result output from a scalar value, an aggregator, a job of subtasks or a big. * * _**Returns**_: A numerical result. * * _**Example**_: Returns the numerical result by multiplying by a job of subtasks. * * ```json * {"tasks":[{"valueTask":{"value":100}},{"multiplyTask":{"job":{"tasks":[{"valueTask":{"value":10}}]}}}]} * ``` * * _**Example**_: Returns the numerical result by multiplying by an aggregator. * * ```json * {"tasks":[{"valueTask":{"value":100}},{"multiplyTask":{"aggregatorPubkey":"GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR"}}]} * ``` * * _**Example**_: Returns the numerical result by multiplying by a big. * * ```json * {"tasks":[{"cacheTask":{"cacheItems":[{"variableName":"TEN","job":{"tasks":[{"valueTask":{"value":10}}]}}]}},{"valueTask":{"value":100}},{"multiplyTask":{"big":"${TEN}"}}]} * ``` */ class MultiplyTask implements IMultiplyTask { /** * Constructs a new MultiplyTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMultiplyTask); /** Specifies a scalar to multiply by. */ public scalar?: (number|null); /** Specifies an aggregator to multiply by. */ public aggregatorPubkey?: (string|null); /** A job whose result is computed before multiplying our numerical input by that result. */ public job?: (oracle_job.IOracleJob|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ public big?: (string|null); /** MultiplyTask Multiple. */ public Multiple?: ("scalar"|"aggregatorPubkey"|"job"|"big"); /** * Creates a new MultiplyTask instance using the specified properties. * @param [properties] Properties to set * @returns MultiplyTask instance */ public static create(properties?: oracle_job.OracleJob.IMultiplyTask): oracle_job.OracleJob.MultiplyTask; /** * Encodes the specified MultiplyTask message. Does not implicitly {@link oracle_job.OracleJob.MultiplyTask.verify|verify} messages. * @param message MultiplyTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMultiplyTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MultiplyTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MultiplyTask.verify|verify} messages. * @param message MultiplyTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMultiplyTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MultiplyTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MultiplyTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MultiplyTask; /** * Decodes a MultiplyTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MultiplyTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MultiplyTask; /** * Verifies a MultiplyTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MultiplyTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MultiplyTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MultiplyTask; /** * Creates a plain object from a MultiplyTask message. Also converts values to other types if specified. * @param message MultiplyTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MultiplyTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MultiplyTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MultiplyTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an AddTask. */ interface IAddTask { /** Specifies a scalar to add by. */ scalar?: (number|null); /** Specifies an aggregator to add by. */ aggregatorPubkey?: (string|null); /** A job whose result is computed before adding our numerical input by that result. */ job?: (oracle_job.IOracleJob|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ big?: (string|null); } /** * This task will add a numerical input by a scalar value from a job of subtasks, an aggregator, or a big. * * _**Input**_: The current running numerical result output from a scalar value, an aggregator, a job of subtasks or a big. * * _**Returns**_: A numerical result. * * _**Example**_: Returns the numerical result by adding by a job of subtasks. * * ```json * {"tasks":[{"valueTask":{"value":100}},{"addTask":{"job":{"tasks":[{"valueTask":{"value":10}}]}}}]} * ``` * * _**Example**_: Returns the numerical result by multiplying by an aggregator. * * ```json * {"tasks":[{"valueTask":{"value":100}},{"addTask":{"aggregatorPubkey":"GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR"}}]} * ``` * * _**Example**_: Returns the numerical result by multiplying by a big. * * ```json * {"tasks":[{"cacheTask":{"cacheItems":[{"variableName":"TEN","job":{"tasks":[{"valueTask":{"value":10}}]}}]}},{"valueTask":{"value":100}},{"addTask":{"big":"${TEN}"}}]} * ``` */ class AddTask implements IAddTask { /** * Constructs a new AddTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IAddTask); /** Specifies a scalar to add by. */ public scalar?: (number|null); /** Specifies an aggregator to add by. */ public aggregatorPubkey?: (string|null); /** A job whose result is computed before adding our numerical input by that result. */ public job?: (oracle_job.IOracleJob|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ public big?: (string|null); /** AddTask Addition. */ public Addition?: ("scalar"|"aggregatorPubkey"|"job"|"big"); /** * Creates a new AddTask instance using the specified properties. * @param [properties] Properties to set * @returns AddTask instance */ public static create(properties?: oracle_job.OracleJob.IAddTask): oracle_job.OracleJob.AddTask; /** * Encodes the specified AddTask message. Does not implicitly {@link oracle_job.OracleJob.AddTask.verify|verify} messages. * @param message AddTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IAddTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified AddTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.AddTask.verify|verify} messages. * @param message AddTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IAddTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an AddTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns AddTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.AddTask; /** * Decodes an AddTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns AddTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.AddTask; /** * Verifies an AddTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an AddTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns AddTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.AddTask; /** * Creates a plain object from an AddTask message. Also converts values to other types if specified. * @param message AddTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.AddTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this AddTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for AddTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SubtractTask. */ interface ISubtractTask { /** Specifies a scalar to subtract by. */ scalar?: (number|null); /** Specifies an aggregator to subtract by. */ aggregatorPubkey?: (string|null); /** A job whose result is computed before subtracting our numerical input by that result. */ job?: (oracle_job.IOracleJob|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ big?: (string|null); } /** * This task will subtract a numerical input by a scalar value from a job of subtasks, an aggregator, or a big. * * _**Input**_: The current running numerical result output from a scalar value, an aggregator, a job of subtasks or a big. * * _**Returns**_: A numerical result. * * _**Example**_: Returns the numerical result by subtracting by a job of subtasks. * * ```json * {"tasks":[{"valueTask":{"value":100}},{"subtractTask":{"job":{"tasks":[{"valueTask":{"value":10}}]}}}]} * ``` * * _**Example**_: Returns the numerical result by multiplying by an aggregator. * * ```json * {"tasks":[{"valueTask":{"value":100}},{"subtractTask":{"aggregatorPubkey":"GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR"}}]} * ``` * * _**Example**_: Returns the numerical result by multiplying by a big. * * ```json * {"tasks":[{"cacheTask":{"cacheItems":[{"variableName":"TEN","job":{"tasks":[{"valueTask":{"value":10}}]}}]}},{"valueTask":{"value":100}},{"subtractTask":{"big":"${TEN}"}}]} * ``` */ class SubtractTask implements ISubtractTask { /** * Constructs a new SubtractTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISubtractTask); /** Specifies a scalar to subtract by. */ public scalar?: (number|null); /** Specifies an aggregator to subtract by. */ public aggregatorPubkey?: (string|null); /** A job whose result is computed before subtracting our numerical input by that result. */ public job?: (oracle_job.IOracleJob|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ public big?: (string|null); /** SubtractTask Subtraction. */ public Subtraction?: ("scalar"|"aggregatorPubkey"|"job"|"big"); /** * Creates a new SubtractTask instance using the specified properties. * @param [properties] Properties to set * @returns SubtractTask instance */ public static create(properties?: oracle_job.OracleJob.ISubtractTask): oracle_job.OracleJob.SubtractTask; /** * Encodes the specified SubtractTask message. Does not implicitly {@link oracle_job.OracleJob.SubtractTask.verify|verify} messages. * @param message SubtractTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISubtractTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SubtractTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SubtractTask.verify|verify} messages. * @param message SubtractTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISubtractTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SubtractTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SubtractTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SubtractTask; /** * Decodes a SubtractTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SubtractTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SubtractTask; /** * Verifies a SubtractTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SubtractTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SubtractTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SubtractTask; /** * Creates a plain object from a SubtractTask message. Also converts values to other types if specified. * @param message SubtractTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SubtractTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SubtractTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SubtractTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a LpTokenPriceTask. */ interface ILpTokenPriceTask { /** Mercurial finance pool address. A full list can be found here: https://github.com/mercurial-finance/stable-swap-n-pool-js */ mercurialPoolAddress?: (string|null); /** Saber pool address. A full list can be found here: https://github.com/saber-hq/saber-registry-dist */ saberPoolAddress?: (string|null); /** Orca pool address. A full list can be found here: https://www.orca.so/pools */ orcaPoolAddress?: (string|null); /** The Raydium liquidity pool ammId. A full list can be found here: https://raydium.io/pools */ raydiumPoolAddress?: (string|null); /** A list of Switchboard aggregator accounts used to calculate the fair LP price. This ensures the price is based on the previous round to mitigate flash loan price manipulation. */ priceFeedAddresses?: (string[]|null); /** A list of OracleJobs to execute in order to yield the price feed jobs to use for the fair price formula. */ priceFeedJobs?: (oracle_job.IOracleJob[]|null); /** If enabled and price_feed_addresses provided, the oracle will calculate the fair LP price based on the liquidity pool reserves. See our blog post for more information: https://switchboardxyz.medium.com/fair-lp-token-oracles-94a457c50239 */ useFairPrice?: (boolean|null); } /** * Fetch LP token price info from a number of supported exchanges. * * See our blog post on [Fair LP Token Oracles](/blog/2022/01/20/Fair-LP-Token-Oracles) * * *NOTE**: This is not the swap price but the price of the underlying LP token. * * _**Input**_: None * * _**Returns**_: The price of an LP token for a given AMM pool. * * _**Example**_: Fetch the Orca LP token price of the SOL/USDC pool * * ```json * { "lpTokenPriceTask": { "orcaPoolAddress": "APDFRM3HMr8CAGXwKHiu2f5ePSpaiEJhaURwhsRrUUt9" } } * ``` * * _**Example**_: Fetch the fair price Orca LP token price of the SOL/USDC pool * * ```json * { "lpTokenPriceTask": { "orcaPoolAddress": "APDFRM3HMr8CAGXwKHiu2f5ePSpaiEJhaURwhsRrUUt9", "useFairPrice": true, "priceFeedAddresses": [ "GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR", "BjUgj6YCnFBZ49wF54ddBVA9qu8TeqkFtkbqmZcee8uW" ] } } * ``` * * _**Example**_: Fetch the fair price Raydium LP token price of the SOL/USDC pool * * ```json * { "lpTokenPriceTask": { "raydiumPoolAddress": "58oQChx4yWmvKdwLLZzBi4ChoCc2fqCUWBkwMihLYQo2", "useFairPrice": true,"priceFeedAddresses": ["GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR","BjUgj6YCnFBZ49wF54ddBVA9qu8TeqkFtkbqmZcee8uW" ] } } * ``` */ class LpTokenPriceTask implements ILpTokenPriceTask { /** * Constructs a new LpTokenPriceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ILpTokenPriceTask); /** Mercurial finance pool address. A full list can be found here: https://github.com/mercurial-finance/stable-swap-n-pool-js */ public mercurialPoolAddress?: (string|null); /** Saber pool address. A full list can be found here: https://github.com/saber-hq/saber-registry-dist */ public saberPoolAddress?: (string|null); /** Orca pool address. A full list can be found here: https://www.orca.so/pools */ public orcaPoolAddress?: (string|null); /** The Raydium liquidity pool ammId. A full list can be found here: https://raydium.io/pools */ public raydiumPoolAddress?: (string|null); /** A list of Switchboard aggregator accounts used to calculate the fair LP price. This ensures the price is based on the previous round to mitigate flash loan price manipulation. */ public priceFeedAddresses: string[]; /** A list of OracleJobs to execute in order to yield the price feed jobs to use for the fair price formula. */ public priceFeedJobs: oracle_job.IOracleJob[]; /** If enabled and price_feed_addresses provided, the oracle will calculate the fair LP price based on the liquidity pool reserves. See our blog post for more information: https://switchboardxyz.medium.com/fair-lp-token-oracles-94a457c50239 */ public useFairPrice: boolean; /** LpTokenPriceTask PoolAddress. */ public PoolAddress?: ("mercurialPoolAddress"|"saberPoolAddress"|"orcaPoolAddress"|"raydiumPoolAddress"); /** * Creates a new LpTokenPriceTask instance using the specified properties. * @param [properties] Properties to set * @returns LpTokenPriceTask instance */ public static create(properties?: oracle_job.OracleJob.ILpTokenPriceTask): oracle_job.OracleJob.LpTokenPriceTask; /** * Encodes the specified LpTokenPriceTask message. Does not implicitly {@link oracle_job.OracleJob.LpTokenPriceTask.verify|verify} messages. * @param message LpTokenPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ILpTokenPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified LpTokenPriceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.LpTokenPriceTask.verify|verify} messages. * @param message LpTokenPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ILpTokenPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a LpTokenPriceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns LpTokenPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.LpTokenPriceTask; /** * Decodes a LpTokenPriceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns LpTokenPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.LpTokenPriceTask; /** * Verifies a LpTokenPriceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a LpTokenPriceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns LpTokenPriceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.LpTokenPriceTask; /** * Creates a plain object from a LpTokenPriceTask message. Also converts values to other types if specified. * @param message LpTokenPriceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.LpTokenPriceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this LpTokenPriceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for LpTokenPriceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a LpExchangeRateTask. */ interface ILpExchangeRateTask { /** Used alongside mercurial_pool_address to specify the input token for a swap. */ inTokenAddress?: (string|null); /** Used alongside mercurial_pool_address to specify the output token for a swap. */ outTokenAddress?: (string|null); /** Mercurial finance pool address. A full list can be found here: https://github.com/mercurial-finance/stable-swap-n-pool-js */ mercurialPoolAddress?: (string|null); /** Saber pool address. A full list can be found here: https://github.com/saber-hq/saber-registry-dist */ saberPoolAddress?: (string|null); /** *@deprecated** Use orcaPoolAddress */ orcaPoolTokenMintAddress?: (string|null); /** The Raydium liquidity pool ammId. A full list can be found here: https://raydium.io/pools */ raydiumPoolAddress?: (string|null); /** * Pool address for an Orca LP pool or whirlpool. * A full list of Orca LP pools can be found here: https://www.orca.so/pools */ orcaPoolAddress?: (string|null); /** The Port reserve pubkey. A full list can be found here: https://api-v1.port.finance/reserves */ portReserveAddress?: (string|null); /** DefiTuna Fusion AMM pool address. Program ID: tuna4uSQZncNeeiAMKbstuxA9CUkHH6HmC64wgmnogD */ defitunaPoolAddress?: (string|null); /** LpExchangeRateTask chain */ chain?: (oracle_job.OracleJob.LpExchangeRateTask.Chain|null); } /** * Fetch the current swap price for a given liquidity pool * * _**Input**_: None * * _**Returns**_: The swap price for a given AMM pool. * * _**Example**_: Fetch the exchange rate from the Orca SOL/USDC pool * * ```json * { "lpExchangeRateTask": { "orcaPoolAddress": "APDFRM3HMr8CAGXwKHiu2f5ePSpaiEJhaURwhsRrUUt9" } } * ``` * * _**Example**_: Fetch the exchange rate from the Raydium SOL/USDC pool * * ```json * { "lpExchangeRateTask": { "raydiumPoolAddress": "58oQChx4yWmvKdwLLZzBi4ChoCc2fqCUWBkwMihLYQo2" } } * ``` */ class LpExchangeRateTask implements ILpExchangeRateTask { /** * Constructs a new LpExchangeRateTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ILpExchangeRateTask); /** Used alongside mercurial_pool_address to specify the input token for a swap. */ public inTokenAddress: string; /** Used alongside mercurial_pool_address to specify the output token for a swap. */ public outTokenAddress: string; /** Mercurial finance pool address. A full list can be found here: https://github.com/mercurial-finance/stable-swap-n-pool-js */ public mercurialPoolAddress?: (string|null); /** Saber pool address. A full list can be found here: https://github.com/saber-hq/saber-registry-dist */ public saberPoolAddress?: (string|null); /** **@deprecated** Use orcaPoolAddress */ public orcaPoolTokenMintAddress?: (string|null); /** The Raydium liquidity pool ammId. A full list can be found here: https://raydium.io/pools */ public raydiumPoolAddress?: (string|null); /** * Pool address for an Orca LP pool or whirlpool. * A full list of Orca LP pools can be found here: https://www.orca.so/pools */ public orcaPoolAddress?: (string|null); /** The Port reserve pubkey. A full list can be found here: https://api-v1.port.finance/reserves */ public portReserveAddress?: (string|null); /** DefiTuna Fusion AMM pool address. Program ID: tuna4uSQZncNeeiAMKbstuxA9CUkHH6HmC64wgmnogD */ public defitunaPoolAddress?: (string|null); /** LpExchangeRateTask chain. */ public chain: oracle_job.OracleJob.LpExchangeRateTask.Chain; /** LpExchangeRateTask PoolAddress. */ public PoolAddress?: ("mercurialPoolAddress"|"saberPoolAddress"|"orcaPoolTokenMintAddress"|"raydiumPoolAddress"|"orcaPoolAddress"|"portReserveAddress"|"defitunaPoolAddress"); /** * Creates a new LpExchangeRateTask instance using the specified properties. * @param [properties] Properties to set * @returns LpExchangeRateTask instance */ public static create(properties?: oracle_job.OracleJob.ILpExchangeRateTask): oracle_job.OracleJob.LpExchangeRateTask; /** * Encodes the specified LpExchangeRateTask message. Does not implicitly {@link oracle_job.OracleJob.LpExchangeRateTask.verify|verify} messages. * @param message LpExchangeRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ILpExchangeRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified LpExchangeRateTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.LpExchangeRateTask.verify|verify} messages. * @param message LpExchangeRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ILpExchangeRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a LpExchangeRateTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns LpExchangeRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.LpExchangeRateTask; /** * Decodes a LpExchangeRateTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns LpExchangeRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.LpExchangeRateTask; /** * Verifies a LpExchangeRateTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a LpExchangeRateTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns LpExchangeRateTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.LpExchangeRateTask; /** * Creates a plain object from a LpExchangeRateTask message. Also converts values to other types if specified. * @param message LpExchangeRateTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.LpExchangeRateTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this LpExchangeRateTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for LpExchangeRateTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace LpExchangeRateTask { /** Chain enum. */ enum Chain { SOLANA = 0, ECLIPSE = 1 } } /** Properties of a RegexExtractTask. */ interface IRegexExtractTask { /** * The regular expression pattern to match against the input string. * Uses the fancy-regex Rust crate syntax. */ pattern?: (string|null); /** * The capture group number to extract (0 returns full match, 1+ returns respective capture group). * Defaults to 0 if not specified. */ groupNumber?: (number|null); } /** * Find and extract text using regular expressions from the previous task's output. * * _**Input**_: String output from previous task * * _**Returns**_: The matched string based on the regex pattern and group number * * _**Example**_: Extract the first number from a string * * ```json * { * "regexExtractTask": { * "pattern": "\\d+", * "groupNumber": 0 * } * } * ``` * * _**Example**_: Extract text between quotes * * ```json * { * "regexExtractTask": { * "pattern": "\"([^\"]+)\"", * "groupNumber": 1 * } * } * ``` * * _**Example**_: Extract the first JSON object from a stream * * ```json * { * "regexExtractTask": { * "pattern": "\\{[^}]+\\}" * } * } * ``` */ class RegexExtractTask implements IRegexExtractTask { /** * Constructs a new RegexExtractTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IRegexExtractTask); /** * The regular expression pattern to match against the input string. * Uses the fancy-regex Rust crate syntax. */ public pattern: string; /** * The capture group number to extract (0 returns full match, 1+ returns respective capture group). * Defaults to 0 if not specified. */ public groupNumber: number; /** * Creates a new RegexExtractTask instance using the specified properties. * @param [properties] Properties to set * @returns RegexExtractTask instance */ public static create(properties?: oracle_job.OracleJob.IRegexExtractTask): oracle_job.OracleJob.RegexExtractTask; /** * Encodes the specified RegexExtractTask message. Does not implicitly {@link oracle_job.OracleJob.RegexExtractTask.verify|verify} messages. * @param message RegexExtractTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IRegexExtractTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified RegexExtractTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.RegexExtractTask.verify|verify} messages. * @param message RegexExtractTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IRegexExtractTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a RegexExtractTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns RegexExtractTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.RegexExtractTask; /** * Decodes a RegexExtractTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns RegexExtractTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.RegexExtractTask; /** * Verifies a RegexExtractTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a RegexExtractTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns RegexExtractTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.RegexExtractTask; /** * Creates a plain object from a RegexExtractTask message. Also converts values to other types if specified. * @param message RegexExtractTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.RegexExtractTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this RegexExtractTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for RegexExtractTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a XStepPriceTask. */ interface IXStepPriceTask { /** median task containing the job definitions to fetch the STEP/USD price */ stepJob?: (oracle_job.OracleJob.IMedianTask|null); /** existing aggregator pubkey for STEP/USD */ stepAggregatorPubkey?: (string|null); } /** * Fetch the STEP/USD price either by running a MedianTask or reading an existing aggregator. * * _**Input**_: Provide either `step_job` or `step_aggregator_pubkey`. * * _**Returns**_: The STEP/USD price. * * _**Example**_: Read from an existing STEP/USD aggregator * * ```json * { "xstepPriceTask": { "stepAggregatorPubkey": "STEP_USD_AGGREGATOR" } } * ``` */ class XStepPriceTask implements IXStepPriceTask { /** * Constructs a new XStepPriceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IXStepPriceTask); /** median task containing the job definitions to fetch the STEP/USD price */ public stepJob?: (oracle_job.OracleJob.IMedianTask|null); /** existing aggregator pubkey for STEP/USD */ public stepAggregatorPubkey?: (string|null); /** XStepPriceTask StepSource. */ public StepSource?: ("stepJob"|"stepAggregatorPubkey"); /** * Creates a new XStepPriceTask instance using the specified properties. * @param [properties] Properties to set * @returns XStepPriceTask instance */ public static create(properties?: oracle_job.OracleJob.IXStepPriceTask): oracle_job.OracleJob.XStepPriceTask; /** * Encodes the specified XStepPriceTask message. Does not implicitly {@link oracle_job.OracleJob.XStepPriceTask.verify|verify} messages. * @param message XStepPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IXStepPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified XStepPriceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.XStepPriceTask.verify|verify} messages. * @param message XStepPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IXStepPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a XStepPriceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns XStepPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.XStepPriceTask; /** * Decodes a XStepPriceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns XStepPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.XStepPriceTask; /** * Verifies a XStepPriceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a XStepPriceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns XStepPriceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.XStepPriceTask; /** * Creates a plain object from a XStepPriceTask message. Also converts values to other types if specified. * @param message XStepPriceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.XStepPriceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this XStepPriceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for XStepPriceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a TwapTask. */ interface ITwapTask { /** The target aggregator for the TWAP. */ aggregatorPubkey?: (string|null); /** Period, in seconds, the twap should account for */ period?: (number|null); /** Weight samples by their propagation time */ weightByPropagationTime?: (boolean|null); /** Minimum number of samples in the history to calculate a valid result */ minSamples?: (number|null); /** Ending unix timestamp to collect values up to */ endingUnixTimestamp?: (number|null); /** Execute the task to get the ending unix timestamp */ endingUnixTimestampTask?: (oracle_job.OracleJob.ICronParseTask|null); } /** * Takes a twap over a set period for a certain aggregator. Aggregators have an optional history buffer account storing the last N accepted results. The TwapTask will iterate over an aggregators history buffer and calculate the time weighted average of the samples within a given time period. * * _**Input**_: None * * _**Returns**_: The time weighted average of an aggregator over a given time period. * * _**Example**_: The 1hr Twap of the SOL/USD Aggregator, requiring at least 60 samples. * * ```json * { "twapTask": { "aggregatorPubkey": "GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR", "period": 3600, "minSamples": 60, "weightByPropagationTime": true } } * ``` */ class TwapTask implements ITwapTask { /** * Constructs a new TwapTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ITwapTask); /** The target aggregator for the TWAP. */ public aggregatorPubkey: string; /** Period, in seconds, the twap should account for */ public period: number; /** Weight samples by their propagation time */ public weightByPropagationTime: boolean; /** Minimum number of samples in the history to calculate a valid result */ public minSamples: number; /** Ending unix timestamp to collect values up to */ public endingUnixTimestamp: number; /** Execute the task to get the ending unix timestamp */ public endingUnixTimestampTask?: (oracle_job.OracleJob.ICronParseTask|null); /** * Creates a new TwapTask instance using the specified properties. * @param [properties] Properties to set * @returns TwapTask instance */ public static create(properties?: oracle_job.OracleJob.ITwapTask): oracle_job.OracleJob.TwapTask; /** * Encodes the specified TwapTask message. Does not implicitly {@link oracle_job.OracleJob.TwapTask.verify|verify} messages. * @param message TwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ITwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified TwapTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.TwapTask.verify|verify} messages. * @param message TwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ITwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a TwapTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns TwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.TwapTask; /** * Decodes a TwapTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns TwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.TwapTask; /** * Verifies a TwapTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a TwapTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns TwapTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.TwapTask; /** * Creates a plain object from a TwapTask message. Also converts values to other types if specified. * @param message TwapTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.TwapTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this TwapTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for TwapTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SurgeTwapTask. */ interface ISurgeTwapTask { /** Canonical USD trading pair (e.g., "BTC/USD", "ETH/USD", "SOL/USD") */ symbol?: (string|null); /** Time interval for TWAP calculation (default: ONE_HOUR) */ timeInterval?: (oracle_job.OracleJob.SurgeTwapTask.TimeInterval|null); } /** * Compute TWAP from local candle database using AUTO-resolved source. * * Uses the AUTO source cache to resolve the best (exchange, pair) for a * canonical USD pair, then queries local candle storage and computes TWAP. */ class SurgeTwapTask implements ISurgeTwapTask { /** * Constructs a new SurgeTwapTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISurgeTwapTask); /** Canonical USD trading pair (e.g., "BTC/USD", "ETH/USD", "SOL/USD") */ public symbol: string; /** Time interval for TWAP calculation (default: ONE_HOUR) */ public timeInterval: oracle_job.OracleJob.SurgeTwapTask.TimeInterval; /** * Creates a new SurgeTwapTask instance using the specified properties. * @param [properties] Properties to set * @returns SurgeTwapTask instance */ public static create(properties?: oracle_job.OracleJob.ISurgeTwapTask): oracle_job.OracleJob.SurgeTwapTask; /** * Encodes the specified SurgeTwapTask message. Does not implicitly {@link oracle_job.OracleJob.SurgeTwapTask.verify|verify} messages. * @param message SurgeTwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISurgeTwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SurgeTwapTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SurgeTwapTask.verify|verify} messages. * @param message SurgeTwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISurgeTwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SurgeTwapTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SurgeTwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SurgeTwapTask; /** * Decodes a SurgeTwapTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SurgeTwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SurgeTwapTask; /** * Verifies a SurgeTwapTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SurgeTwapTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SurgeTwapTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SurgeTwapTask; /** * Creates a plain object from a SurgeTwapTask message. Also converts values to other types if specified. * @param message SurgeTwapTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SurgeTwapTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SurgeTwapTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SurgeTwapTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace SurgeTwapTask { /** TWAP time interval (predefined windows aligned to candle boundaries) */ enum TimeInterval { FIVE_MINUTES = 0, TEN_MINUTES = 1, FIFTEEN_MINUTES = 2, THIRTY_MINUTES = 3, ONE_HOUR = 4, TWO_HOURS = 5, SIX_HOURS = 6, TWELVE_HOURS = 7 } } /** Properties of a SerumSwapTask. */ interface ISerumSwapTask { /** The serum pool to fetch swap price for */ serumPoolAddress?: (string|null); } /** Fetch the latest swap price on Serum's orderbook */ class SerumSwapTask implements ISerumSwapTask { /** * Constructs a new SerumSwapTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISerumSwapTask); /** The serum pool to fetch swap price for */ public serumPoolAddress: string; /** * Creates a new SerumSwapTask instance using the specified properties. * @param [properties] Properties to set * @returns SerumSwapTask instance */ public static create(properties?: oracle_job.OracleJob.ISerumSwapTask): oracle_job.OracleJob.SerumSwapTask; /** * Encodes the specified SerumSwapTask message. Does not implicitly {@link oracle_job.OracleJob.SerumSwapTask.verify|verify} messages. * @param message SerumSwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISerumSwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SerumSwapTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SerumSwapTask.verify|verify} messages. * @param message SerumSwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISerumSwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SerumSwapTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SerumSwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SerumSwapTask; /** * Decodes a SerumSwapTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SerumSwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SerumSwapTask; /** * Verifies a SerumSwapTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SerumSwapTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SerumSwapTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SerumSwapTask; /** * Creates a plain object from a SerumSwapTask message. Also converts values to other types if specified. * @param message SerumSwapTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SerumSwapTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SerumSwapTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SerumSwapTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PowTask. */ interface IPowTask { /** Take the working value to the exponent of value. */ scalar?: (number|null); /** Take the working value to the exponent of the aggregators value. */ aggregatorPubkey?: (string|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ big?: (string|null); } /** * Round the current running result to an exponential power. * * _**Input**_: The current running numerical result. * * _**Returns**_: The input raised to an exponential power. * * _**Example**_: Raise 2 to the power of 3, 2^3 * * ```json * {"tasks":[{"valueTask":{"value":2}},{"powTask":{"scalar":3}}]} * ``` */ class PowTask implements IPowTask { /** * Constructs a new PowTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IPowTask); /** Take the working value to the exponent of value. */ public scalar?: (number|null); /** Take the working value to the exponent of the aggregators value. */ public aggregatorPubkey?: (string|null); /** A stringified big.js. `Accepts variable expansion syntax.` */ public big?: (string|null); /** PowTask Exponent. */ public Exponent?: ("scalar"|"aggregatorPubkey"|"big"); /** * Creates a new PowTask instance using the specified properties. * @param [properties] Properties to set * @returns PowTask instance */ public static create(properties?: oracle_job.OracleJob.IPowTask): oracle_job.OracleJob.PowTask; /** * Encodes the specified PowTask message. Does not implicitly {@link oracle_job.OracleJob.PowTask.verify|verify} messages. * @param message PowTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IPowTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified PowTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.PowTask.verify|verify} messages. * @param message PowTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IPowTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a PowTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns PowTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.PowTask; /** * Decodes a PowTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns PowTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.PowTask; /** * Verifies a PowTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a PowTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns PowTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.PowTask; /** * Creates a plain object from a PowTask message. Also converts values to other types if specified. * @param message PowTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.PowTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this PowTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for PowTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a LendingRateTask. */ interface ILendingRateTask { /** 01, apricot, francium, jet, larix, mango, port, solend, tulip */ protocol?: (string|null); /** A token mint address supported by the chosen protocol */ assetMint?: (string|null); /** LendingRateTask field */ field?: (oracle_job.OracleJob.LendingRateTask.Field|null); } /** Fetch the lending rates for various Solana protocols */ class LendingRateTask implements ILendingRateTask { /** * Constructs a new LendingRateTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ILendingRateTask); /** 01, apricot, francium, jet, larix, mango, port, solend, tulip */ public protocol: string; /** A token mint address supported by the chosen protocol */ public assetMint: string; /** LendingRateTask field. */ public field: oracle_job.OracleJob.LendingRateTask.Field; /** * Creates a new LendingRateTask instance using the specified properties. * @param [properties] Properties to set * @returns LendingRateTask instance */ public static create(properties?: oracle_job.OracleJob.ILendingRateTask): oracle_job.OracleJob.LendingRateTask; /** * Encodes the specified LendingRateTask message. Does not implicitly {@link oracle_job.OracleJob.LendingRateTask.verify|verify} messages. * @param message LendingRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ILendingRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified LendingRateTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.LendingRateTask.verify|verify} messages. * @param message LendingRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ILendingRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a LendingRateTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns LendingRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.LendingRateTask; /** * Decodes a LendingRateTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns LendingRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.LendingRateTask; /** * Verifies a LendingRateTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a LendingRateTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns LendingRateTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.LendingRateTask; /** * Creates a plain object from a LendingRateTask message. Also converts values to other types if specified. * @param message LendingRateTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.LendingRateTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this LendingRateTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for LendingRateTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace LendingRateTask { /** Field enum. */ enum Field { FIELD_DEPOSIT_RATE = 0, FIELD_BORROW_RATE = 1 } } /** Properties of a MangoPerpMarketTask. */ interface IMangoPerpMarketTask { /** Mainnet address for a mango perpetual market. A full list can be found here: https://github.com/blockworks-foundation/mango-client-v3/blob/main/src/ids.json */ perpMarketAddress?: (string|null); } /** Fetch the current price for a Mango perpetual market */ class MangoPerpMarketTask implements IMangoPerpMarketTask { /** * Constructs a new MangoPerpMarketTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMangoPerpMarketTask); /** Mainnet address for a mango perpetual market. A full list can be found here: https://github.com/blockworks-foundation/mango-client-v3/blob/main/src/ids.json */ public perpMarketAddress: string; /** * Creates a new MangoPerpMarketTask instance using the specified properties. * @param [properties] Properties to set * @returns MangoPerpMarketTask instance */ public static create(properties?: oracle_job.OracleJob.IMangoPerpMarketTask): oracle_job.OracleJob.MangoPerpMarketTask; /** * Encodes the specified MangoPerpMarketTask message. Does not implicitly {@link oracle_job.OracleJob.MangoPerpMarketTask.verify|verify} messages. * @param message MangoPerpMarketTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMangoPerpMarketTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MangoPerpMarketTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MangoPerpMarketTask.verify|verify} messages. * @param message MangoPerpMarketTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMangoPerpMarketTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MangoPerpMarketTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MangoPerpMarketTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MangoPerpMarketTask; /** * Decodes a MangoPerpMarketTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MangoPerpMarketTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MangoPerpMarketTask; /** * Verifies a MangoPerpMarketTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MangoPerpMarketTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MangoPerpMarketTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MangoPerpMarketTask; /** * Creates a plain object from a MangoPerpMarketTask message. Also converts values to other types if specified. * @param message MangoPerpMarketTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MangoPerpMarketTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MangoPerpMarketTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MangoPerpMarketTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a JupiterSwapTask. */ interface IJupiterSwapTask { /** The input token address. */ inTokenAddress?: (string|null); /** The output token address. */ outTokenAddress?: (string|null); /** A list of AMM markets to allow. */ allowList?: (oracle_job.OracleJob.JupiterSwapTask.IFilterList|null); /** A list of AMM markets to deny. */ denyList?: (oracle_job.OracleJob.JupiterSwapTask.IFilterList|null); /** The amount of `in_token_address` tokens to swap. */ baseAmount?: (number|null); /** The amount of `out_token_address` tokens to swap. */ quoteAmount?: (number|null); /** The amount of `in_token_address` tokens to swap. */ baseAmountString?: (string|null); /** The amount of `out_token_address` tokens to swap. */ quoteAmountString?: (string|null); /** The allowable slippage on the swap in decimal form (e.g. 0.5 is 0.5% slippage) */ slippage?: (number|null); /** JupiterSwapTask version */ version?: (oracle_job.OracleJob.JupiterSwapTask.Version|null); /** JupiterSwapTask directRoutesOnly */ directRoutesOnly?: (boolean|null); /** * Optional Jupiter API key. * * A non-empty literal is used directly. To provide the key at execution time, * set this field to any variable placeholder such as `${JUPITER_API_KEY}` and * provide the matching non-empty value through `variableOverrides` or a * preceding `CacheTask`. * * Each Jupiter task resolves this field independently. Normal substitution * precedence applies, so a cache value wins over a request override with the * same name. An unresolved placeholder, or a placeholder whose effective value * is blank, fails before contacting Jupiter. If this field is omitted or is a * literal blank value, the built-in compatibility key is used. */ apiKey?: (string|null); } /** * Fetch the simulated price for a swap on JupiterSwap. * * _**Input**_: None * * _**Returns**_: The swap price on Jupiter for a given input and output token mint address. * * _**Example**_: Fetch the JupiterSwap price for exchanging 1 SOL into USDC. * * ```json * { "jupiterSwapTask": { "inTokenAddress": "So11111111111111111111111111111111111111112", "outTokenAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" } } * ``` * * _**Example**_: Fetch the JupiterSwap price for exchanging 1000 SOL into USDC. * * ```json * { "jupiterSwapTask": { "inTokenAddress": "So11111111111111111111111111111111111111112", "outTokenAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "baseAmount": "1000" } } * ``` * * _**Example**_: Supply a request-scoped Jupiter API key without storing it in the job. * * ```json * { * "jupiterSwapTask": { * "inTokenAddress": "So11111111111111111111111111111111111111112", * "outTokenAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", * "baseAmountString": "1", * "apiKey": "${JUPITER_API_KEY}" * } * } * ``` * * Pass the matching non-empty value when requesting the feed: * * ```typescript * const response = await gateway.fetchSignaturesConsensus({ * ... * variableOverrides: { * JUPITER_API_KEY: process.env.JUPITER_API_KEY!, * }, * }); * ``` */ class JupiterSwapTask implements IJupiterSwapTask { /** * Constructs a new JupiterSwapTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IJupiterSwapTask); /** The input token address. */ public inTokenAddress: string; /** The output token address. */ public outTokenAddress: string; /** A list of AMM markets to allow. */ public allowList?: (oracle_job.OracleJob.JupiterSwapTask.IFilterList|null); /** A list of AMM markets to deny. */ public denyList?: (oracle_job.OracleJob.JupiterSwapTask.IFilterList|null); /** The amount of `in_token_address` tokens to swap. */ public baseAmount?: (number|null); /** The amount of `out_token_address` tokens to swap. */ public quoteAmount?: (number|null); /** The amount of `in_token_address` tokens to swap. */ public baseAmountString?: (string|null); /** The amount of `out_token_address` tokens to swap. */ public quoteAmountString?: (string|null); /** The allowable slippage on the swap in decimal form (e.g. 0.5 is 0.5% slippage) */ public slippage: number; /** JupiterSwapTask version. */ public version: oracle_job.OracleJob.JupiterSwapTask.Version; /** JupiterSwapTask directRoutesOnly. */ public directRoutesOnly: boolean; /** * Optional Jupiter API key. * * A non-empty literal is used directly. To provide the key at execution time, * set this field to any variable placeholder such as `${JUPITER_API_KEY}` and * provide the matching non-empty value through `variableOverrides` or a * preceding `CacheTask`. * * Each Jupiter task resolves this field independently. Normal substitution * precedence applies, so a cache value wins over a request override with the * same name. An unresolved placeholder, or a placeholder whose effective value * is blank, fails before contacting Jupiter. If this field is omitted or is a * literal blank value, the built-in compatibility key is used. */ public apiKey: string; /** JupiterSwapTask RoutesFilters. */ public RoutesFilters?: ("allowList"|"denyList"); /** JupiterSwapTask SwapAmount. */ public SwapAmount?: ("baseAmount"|"quoteAmount"|"baseAmountString"|"quoteAmountString"); /** * Creates a new JupiterSwapTask instance using the specified properties. * @param [properties] Properties to set * @returns JupiterSwapTask instance */ public static create(properties?: oracle_job.OracleJob.IJupiterSwapTask): oracle_job.OracleJob.JupiterSwapTask; /** * Encodes the specified JupiterSwapTask message. Does not implicitly {@link oracle_job.OracleJob.JupiterSwapTask.verify|verify} messages. * @param message JupiterSwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IJupiterSwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified JupiterSwapTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.JupiterSwapTask.verify|verify} messages. * @param message JupiterSwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IJupiterSwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a JupiterSwapTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns JupiterSwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.JupiterSwapTask; /** * Decodes a JupiterSwapTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns JupiterSwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.JupiterSwapTask; /** * Verifies a JupiterSwapTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a JupiterSwapTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns JupiterSwapTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.JupiterSwapTask; /** * Creates a plain object from a JupiterSwapTask message. Also converts values to other types if specified. * @param message JupiterSwapTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.JupiterSwapTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this JupiterSwapTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for JupiterSwapTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace JupiterSwapTask { /** Properties of a FilterList. */ interface IFilterList { /** A list of Jupiter AMM labels to allow or deny (e.g. 'Raydium', 'Orca') */ labels?: (string[]|null); } /** Represents a FilterList. */ class FilterList implements IFilterList { /** * Constructs a new FilterList. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.JupiterSwapTask.IFilterList); /** A list of Jupiter AMM labels to allow or deny (e.g. 'Raydium', 'Orca') */ public labels: string[]; /** * Creates a new FilterList instance using the specified properties. * @param [properties] Properties to set * @returns FilterList instance */ public static create(properties?: oracle_job.OracleJob.JupiterSwapTask.IFilterList): oracle_job.OracleJob.JupiterSwapTask.FilterList; /** * Encodes the specified FilterList message. Does not implicitly {@link oracle_job.OracleJob.JupiterSwapTask.FilterList.verify|verify} messages. * @param message FilterList message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.JupiterSwapTask.IFilterList, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified FilterList message, length delimited. Does not implicitly {@link oracle_job.OracleJob.JupiterSwapTask.FilterList.verify|verify} messages. * @param message FilterList message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.JupiterSwapTask.IFilterList, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a FilterList message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns FilterList * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.JupiterSwapTask.FilterList; /** * Decodes a FilterList message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns FilterList * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.JupiterSwapTask.FilterList; /** * Verifies a FilterList message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a FilterList message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns FilterList */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.JupiterSwapTask.FilterList; /** * Creates a plain object from a FilterList message. Also converts values to other types if specified. * @param message FilterList * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.JupiterSwapTask.FilterList, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this FilterList to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for FilterList * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Version enum. */ enum Version { VERSION_V1 = 0, VERSION_V2 = 1 } } /** Properties of a TitanTask. */ interface ITitanTask { /** The input token mint address (base58 encoded). */ inTokenAddress?: (string|null); /** The output token mint address (base58 encoded). */ outTokenAddress?: (string|null); /** The amount of tokens to swap (raw atoms, not scaled by decimals). */ amount?: (string|null); /** Optional user public key for transaction generation (base58 encoded). */ userPublicKey?: (string|null); /** Whether the amount is in terms of input or output token. Defaults to ExactIn. */ swapMode?: (oracle_job.OracleJob.TitanTask.SwapMode|null); /** Allowed slippage in basis points (e.g., 50 = 0.5%). */ slippageBps?: (number|null); /** If set, constrain quotes to the given set of DEXes. */ dexes?: (oracle_job.OracleJob.TitanTask.IFilterList|null); /** If set, exclude the following DEXes when determining routes. */ excludeDexes?: (oracle_job.OracleJob.TitanTask.IFilterList|null); /** If set to true, only direct routes between the input and output mint will be considered. */ onlyDirectRoutes?: (boolean|null); /** If set, limit quotes to the given set of provider IDs. */ providers?: (string[]|null); /** Optional API access token for authenticated requests */ accessToken?: (string|null); /** Optional API endpoint override (defaults to partners.api.titan.exchange) */ apiEndpoint?: (string|null); } /** * Fetch the simulated swap price from Titan API. * * _**Input**_: None * * _**Returns**_: The swap price on Titan for a given input and output token mint address. * * _**Example**_: Fetch the Titan price for exchanging 1 SOL into USDC. * * ```json * { "titanTask": { "inTokenAddress": "So11111111111111111111111111111111111111112", "outTokenAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v" } } * ``` * * _**Example**_: Fetch the Titan price for exchanging 1000 SOL into USDC with slippage. * * ```json * { "titanTask": { "inTokenAddress": "So11111111111111111111111111111111111111112", "outTokenAddress": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v", "amount": "1000", "slippageBps": 50 } } * ``` */ class TitanTask implements ITitanTask { /** * Constructs a new TitanTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ITitanTask); /** The input token mint address (base58 encoded). */ public inTokenAddress: string; /** The output token mint address (base58 encoded). */ public outTokenAddress: string; /** The amount of tokens to swap (raw atoms, not scaled by decimals). */ public amount: string; /** Optional user public key for transaction generation (base58 encoded). */ public userPublicKey: string; /** Whether the amount is in terms of input or output token. Defaults to ExactIn. */ public swapMode: oracle_job.OracleJob.TitanTask.SwapMode; /** Allowed slippage in basis points (e.g., 50 = 0.5%). */ public slippageBps: number; /** If set, constrain quotes to the given set of DEXes. */ public dexes?: (oracle_job.OracleJob.TitanTask.IFilterList|null); /** If set, exclude the following DEXes when determining routes. */ public excludeDexes?: (oracle_job.OracleJob.TitanTask.IFilterList|null); /** If set to true, only direct routes between the input and output mint will be considered. */ public onlyDirectRoutes: boolean; /** If set, limit quotes to the given set of provider IDs. */ public providers: string[]; /** Optional API access token for authenticated requests */ public accessToken: string; /** Optional API endpoint override (defaults to partners.api.titan.exchange) */ public apiEndpoint: string; /** * Creates a new TitanTask instance using the specified properties. * @param [properties] Properties to set * @returns TitanTask instance */ public static create(properties?: oracle_job.OracleJob.ITitanTask): oracle_job.OracleJob.TitanTask; /** * Encodes the specified TitanTask message. Does not implicitly {@link oracle_job.OracleJob.TitanTask.verify|verify} messages. * @param message TitanTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ITitanTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified TitanTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.TitanTask.verify|verify} messages. * @param message TitanTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ITitanTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a TitanTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns TitanTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.TitanTask; /** * Decodes a TitanTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns TitanTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.TitanTask; /** * Verifies a TitanTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a TitanTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns TitanTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.TitanTask; /** * Creates a plain object from a TitanTask message. Also converts values to other types if specified. * @param message TitanTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.TitanTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this TitanTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for TitanTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace TitanTask { /** SwapMode enum. */ enum SwapMode { SWAP_MODE_EXACT_IN = 0, SWAP_MODE_EXACT_OUT = 1 } /** Properties of a FilterList. */ interface IFilterList { /** A list of DEX labels to allow or deny (e.g., 'Raydium', 'Orca') */ labels?: (string[]|null); } /** Represents a FilterList. */ class FilterList implements IFilterList { /** * Constructs a new FilterList. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.TitanTask.IFilterList); /** A list of DEX labels to allow or deny (e.g., 'Raydium', 'Orca') */ public labels: string[]; /** * Creates a new FilterList instance using the specified properties. * @param [properties] Properties to set * @returns FilterList instance */ public static create(properties?: oracle_job.OracleJob.TitanTask.IFilterList): oracle_job.OracleJob.TitanTask.FilterList; /** * Encodes the specified FilterList message. Does not implicitly {@link oracle_job.OracleJob.TitanTask.FilterList.verify|verify} messages. * @param message FilterList message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.TitanTask.IFilterList, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified FilterList message, length delimited. Does not implicitly {@link oracle_job.OracleJob.TitanTask.FilterList.verify|verify} messages. * @param message FilterList message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.TitanTask.IFilterList, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a FilterList message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns FilterList * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.TitanTask.FilterList; /** * Decodes a FilterList message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns FilterList * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.TitanTask.FilterList; /** * Verifies a FilterList message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a FilterList message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns FilterList */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.TitanTask.FilterList; /** * Creates a plain object from a FilterList message. Also converts values to other types if specified. * @param message FilterList * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.TitanTask.FilterList, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this FilterList to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for FilterList * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } } /** Properties of a KuruTask. */ interface IKuruTask { /** The Ethereum address of the user making the swap (default: zero address). */ userAddress?: (string|null); /** The input token contract address (EVM address format). */ tokenIn?: (string|null); /** The output token contract address (EVM address format). */ tokenOut?: (string|null); /** The amount to swap in wei (e.g., "1000000000000000000" for 1 token with 18 decimals). */ amount?: (string|null); /** Whether to automatically calculate slippage tolerance (default: true). */ autoSlippage?: (boolean|null); /** Slippage tolerance in basis points (1-10000, e.g., 50 = 0.5%). Only used when auto_slippage is false. */ slippageTolerance?: (number|null); /** Optional referrer address for fee sharing. */ referrerAddress?: (string|null); /** Optional referrer fee in basis points (0-10000). */ referrerFeeBps?: (number|null); /** Number of decimals for the input token (default: 18). */ inputDecimals?: (number|null); /** Number of decimals for the output token (default: 18). */ outputDecimals?: (number|null); /** Optional API key for authentication (X-API-Key header). */ apiKey?: (string|null); /** Optional bearer token for authentication (Authorization header). */ bearerToken?: (string|null); /** Optional API endpoint override (defaults to ws.staging.kuru.io/api/quote). */ apiEndpoint?: (string|null); } /** * Fetch a swap quote from Kuru API for best path routing on EVM chains. * * _**Input**_: None * * _**Returns**_: The expected output amount for swapping tokens via Kuru. * * _**Example**_: Fetch a quote for swapping 1 WETH to USDC. * * ```json * { "kuruTask": { "tokenIn": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", "tokenOut": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", "amount": "1000000000000000000" } } * ``` * * _**Example**_: Fetch a quote with custom slippage tolerance. * * ```json * { "kuruTask": { "tokenIn": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", "tokenOut": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", "amount": "1000000000000000000", "autoSlippage": false, "slippageTolerance": 100 } } * ``` */ class KuruTask implements IKuruTask { /** * Constructs a new KuruTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IKuruTask); /** The Ethereum address of the user making the swap (default: zero address). */ public userAddress: string; /** The input token contract address (EVM address format). */ public tokenIn: string; /** The output token contract address (EVM address format). */ public tokenOut: string; /** The amount to swap in wei (e.g., "1000000000000000000" for 1 token with 18 decimals). */ public amount: string; /** Whether to automatically calculate slippage tolerance (default: true). */ public autoSlippage: boolean; /** Slippage tolerance in basis points (1-10000, e.g., 50 = 0.5%). Only used when auto_slippage is false. */ public slippageTolerance: number; /** Optional referrer address for fee sharing. */ public referrerAddress: string; /** Optional referrer fee in basis points (0-10000). */ public referrerFeeBps: number; /** Number of decimals for the input token (default: 18). */ public inputDecimals: number; /** Number of decimals for the output token (default: 18). */ public outputDecimals: number; /** Optional API key for authentication (X-API-Key header). */ public apiKey: string; /** Optional bearer token for authentication (Authorization header). */ public bearerToken: string; /** Optional API endpoint override (defaults to ws.staging.kuru.io/api/quote). */ public apiEndpoint: string; /** * Creates a new KuruTask instance using the specified properties. * @param [properties] Properties to set * @returns KuruTask instance */ public static create(properties?: oracle_job.OracleJob.IKuruTask): oracle_job.OracleJob.KuruTask; /** * Encodes the specified KuruTask message. Does not implicitly {@link oracle_job.OracleJob.KuruTask.verify|verify} messages. * @param message KuruTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IKuruTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified KuruTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.KuruTask.verify|verify} messages. * @param message KuruTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IKuruTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a KuruTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns KuruTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.KuruTask; /** * Decodes a KuruTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns KuruTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.KuruTask; /** * Verifies a KuruTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a KuruTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns KuruTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.KuruTask; /** * Creates a plain object from a KuruTask message. Also converts values to other types if specified. * @param message KuruTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.KuruTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this KuruTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for KuruTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MaceTask. */ interface IMaceTask { /** The Ethereum address of the user making the swap (default: zero address). */ fromAddress?: (string|null); /** * The input token identifier (EVM address, "native", or ERC1155 format). * Examples: "native", "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701" */ tokenIn?: (string|null); /** The output token identifier (EVM address, "native", or ERC1155 format). */ tokenOut?: (string|null); /** The amount to swap in wei (e.g., "1000000000000000000" for 1 token with 18 decimals). */ amount?: (string|null); /** Slippage tolerance in basis points (1-10000, e.g., 100 = 1%). Default: 10000 (100%). */ slippageToleranceBps?: (number|null); /** * Gas price to simulate with in wei. Influences route selection - higher values weight gas usage more. * Default: "1000000000" (1 Gwei). */ gasPriceWei?: (string|null); /** Maximum number of routes to return (default: 1). Routes range from most valuable to most stable. */ maxRoutes?: (number|null); /** Number of decimals for the input token (default: 18). */ inputDecimals?: (number|null); /** Number of decimals for the output token (default: 18). */ outputDecimals?: (number|null); /** Optional API key for authentication. */ apiKey?: (string|null); /** Optional API endpoint override (defaults to testnet.api.beta.mace.ag for testnet). */ apiEndpoint?: (string|null); } /** * Fetch a swap quote from MACE (M.A.C.E.) aggregator for best path routing on EVM chains. * MACE is a Multi-DEX EVM trade solver that uses simulated transactions for optimal routing. * * _**Input**_: None * * _**Returns**_: The expected output amount for swapping tokens via MACE aggregator. * * _**Example**_: Fetch a quote for swapping 1 WETH to USDC on Ethereum. * * ```json * { "maceTask": { "tokenIn": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", "tokenOut": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", "amount": "1000000000000000000" } } * ``` * * _**Example**_: Fetch a quote with custom slippage and gas price. * * ```json * { "maceTask": { "tokenIn": "0xC02aaA39b223FE8D0A0e5C4F27eAD9083C756Cc2", "tokenOut": "0xA0b86991c6218b36c1d19D4a2e9Eb0cE3606eB48", "amount": "1000000000000000000", "slippageToleranceBps": 100, "gasPriceWei": "50000000000" } } * ``` */ class MaceTask implements IMaceTask { /** * Constructs a new MaceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMaceTask); /** The Ethereum address of the user making the swap (default: zero address). */ public fromAddress: string; /** * The input token identifier (EVM address, "native", or ERC1155 format). * Examples: "native", "0x760AfE86e5de5fa0Ee542fc7B7B713e1c5425701" */ public tokenIn: string; /** The output token identifier (EVM address, "native", or ERC1155 format). */ public tokenOut: string; /** The amount to swap in wei (e.g., "1000000000000000000" for 1 token with 18 decimals). */ public amount: string; /** Slippage tolerance in basis points (1-10000, e.g., 100 = 1%). Default: 10000 (100%). */ public slippageToleranceBps: number; /** * Gas price to simulate with in wei. Influences route selection - higher values weight gas usage more. * Default: "1000000000" (1 Gwei). */ public gasPriceWei: string; /** Maximum number of routes to return (default: 1). Routes range from most valuable to most stable. */ public maxRoutes: number; /** Number of decimals for the input token (default: 18). */ public inputDecimals: number; /** Number of decimals for the output token (default: 18). */ public outputDecimals: number; /** Optional API key for authentication. */ public apiKey: string; /** Optional API endpoint override (defaults to testnet.api.beta.mace.ag for testnet). */ public apiEndpoint: string; /** * Creates a new MaceTask instance using the specified properties. * @param [properties] Properties to set * @returns MaceTask instance */ public static create(properties?: oracle_job.OracleJob.IMaceTask): oracle_job.OracleJob.MaceTask; /** * Encodes the specified MaceTask message. Does not implicitly {@link oracle_job.OracleJob.MaceTask.verify|verify} messages. * @param message MaceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMaceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MaceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MaceTask.verify|verify} messages. * @param message MaceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMaceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MaceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MaceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MaceTask; /** * Decodes a MaceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MaceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MaceTask; /** * Verifies a MaceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MaceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MaceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MaceTask; /** * Creates a plain object from a MaceTask message. Also converts values to other types if specified. * @param message MaceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MaceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MaceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MaceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a HyloTask. */ interface IHyloTask { /** The Hylo token to convert from (defaults to hyUSD) */ token?: (oracle_job.OracleJob.HyloTask.Token|null); } /** * Hylo Protocol task for converting 1 hyUSD to jitoSOL. * hyUSD is a stablecoin with NAV pegged to $1.00 USD. * Converts exactly 1 hyUSD token to jitoSOL. */ class HyloTask implements IHyloTask { /** * Constructs a new HyloTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IHyloTask); /** The Hylo token to convert from (defaults to hyUSD) */ public token: oracle_job.OracleJob.HyloTask.Token; /** * Creates a new HyloTask instance using the specified properties. * @param [properties] Properties to set * @returns HyloTask instance */ public static create(properties?: oracle_job.OracleJob.IHyloTask): oracle_job.OracleJob.HyloTask; /** * Encodes the specified HyloTask message. Does not implicitly {@link oracle_job.OracleJob.HyloTask.verify|verify} messages. * @param message HyloTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IHyloTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified HyloTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.HyloTask.verify|verify} messages. * @param message HyloTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IHyloTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a HyloTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns HyloTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.HyloTask; /** * Decodes a HyloTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns HyloTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.HyloTask; /** * Verifies a HyloTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a HyloTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns HyloTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.HyloTask; /** * Creates a plain object from a HyloTask message. Also converts values to other types if specified. * @param message HyloTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.HyloTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this HyloTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for HyloTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace HyloTask { /** Token enum. */ enum Token { TOKEN_HYUSD = 0 } } /** Properties of a PerpMarketTask. */ interface IPerpMarketTask { /** Market address for a mango perpetual market. A full list can be found here: https://github.com/blockworks-foundation/mango-client-v3/blob/main/src/ids.json */ mangoMarketAddress?: (string|null); /** Market address for a drift perpetual market. A full list can be found here: https://github.com/drift-labs/protocol-v1/blob/master/sdk/src/constants/markets.ts */ driftMarketAddress?: (string|null); /** Market address for a zeta perpetual market. */ zetaMarketAddress?: (string|null); /** Market address for a 01 protocol perpetual market. */ zoMarketAddress?: (string|null); } /** Fetch the current price of a perpetual market. */ class PerpMarketTask implements IPerpMarketTask { /** * Constructs a new PerpMarketTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IPerpMarketTask); /** Market address for a mango perpetual market. A full list can be found here: https://github.com/blockworks-foundation/mango-client-v3/blob/main/src/ids.json */ public mangoMarketAddress?: (string|null); /** Market address for a drift perpetual market. A full list can be found here: https://github.com/drift-labs/protocol-v1/blob/master/sdk/src/constants/markets.ts */ public driftMarketAddress?: (string|null); /** Market address for a zeta perpetual market. */ public zetaMarketAddress?: (string|null); /** Market address for a 01 protocol perpetual market. */ public zoMarketAddress?: (string|null); /** PerpMarketTask MarketAddress. */ public MarketAddress?: ("mangoMarketAddress"|"driftMarketAddress"|"zetaMarketAddress"|"zoMarketAddress"); /** * Creates a new PerpMarketTask instance using the specified properties. * @param [properties] Properties to set * @returns PerpMarketTask instance */ public static create(properties?: oracle_job.OracleJob.IPerpMarketTask): oracle_job.OracleJob.PerpMarketTask; /** * Encodes the specified PerpMarketTask message. Does not implicitly {@link oracle_job.OracleJob.PerpMarketTask.verify|verify} messages. * @param message PerpMarketTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IPerpMarketTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified PerpMarketTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.PerpMarketTask.verify|verify} messages. * @param message PerpMarketTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IPerpMarketTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a PerpMarketTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns PerpMarketTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.PerpMarketTask; /** * Decodes a PerpMarketTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns PerpMarketTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.PerpMarketTask; /** * Verifies a PerpMarketTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a PerpMarketTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns PerpMarketTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.PerpMarketTask; /** * Creates a plain object from a PerpMarketTask message. Also converts values to other types if specified. * @param message PerpMarketTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.PerpMarketTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this PerpMarketTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for PerpMarketTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OracleTask. */ interface IOracleTask { /** Mainnet address of a Switchboard feed. Switchboard is decentralized and allows anyone to build their own feed. */ switchboardAddress?: (string|null); /** Mainnet address for a Pyth feed. A full list can be found here: https://pyth.network/price-feeds/ */ pythAddress?: (string|null); /** Mainnet address for a Chainlink feed. A full list can be found here: https://docs.chain.link/docs/solana/data-feeds-solana */ chainlinkAddress?: (string|null); /** OracleTask edgeId */ edgeId?: (string|null); /** OracleTask redstoneId */ redstoneId?: (string|null); /** Pyth price feed ID for an upgraded Solana push feed. The task derives and reads the on-chain feed account using this ID and pyth_configs.push_feed_shard_id; it does not use Hermes or a Hermes API key. */ pythPushFeedId?: (string|null); /** * Value (as a percentage) that the lower bound confidence interval is of the actual value. * Confidence intervals that are larger that this treshold are rejected. * * The confidence interval should be provided as a raw percentage value. For example, to * represent 10%, enter the value as 10, not 0.1. */ pythAllowedConfidenceInterval?: (number|null); /** OracleTask chainlinkConfigs */ chainlinkConfigs?: (oracle_job.OracleJob.OracleTask.IChainlinkConfigs|null); /** Optional settings for Pyth Hermes and on-chain push-feed tasks. */ pythConfigs?: (oracle_job.OracleJob.OracleTask.IPythConfigs|null); /** OracleTask switchboardConfigs */ switchboardConfigs?: (oracle_job.OracleJob.OracleTask.ISwitchboardConfigs|null); /** OracleTask edgeConfigs */ edgeConfigs?: (oracle_job.OracleJob.OracleTask.IEdgeConfigs|null); /** OracleTask redstoneConfigs */ redstoneConfigs?: (oracle_job.OracleJob.OracleTask.IRedstoneConfigs|null); } /** * Fetch the current price of a Solana oracle protocol. * * _**Input**_: None * * _**Returns**_: The current price of an on-chain oracle. * * _**Example**_: The Switchboard SOL/USD oracle price. * * ```json * { "oracleTask": { "switchboardAddress": "GvDMxPzN1sCj7L26YDK2HnMRXEQmQ2aemov8YBtPS7vR" } } * ``` * * _**Example**_: The Pyth SOL/USD oracle price. * * ```json * { "oracleTask": { "pythAddress": "H6ARHf6YXhGYeQfUzQNGk6rDNnLBQKrenN712K4AQJEG" } } * ``` * * _**Example**_: The Pyth SOL/USD oracle price using a Hermes API key supplied at execution time. * * ```json * { "oracleTask": { "pythAddress": "H6ARHf6YXhGYeQfUzQNGk6rDNnLBQKrenN712K4AQJEG", "pythConfigs": { "apiKey": "${PYTH_API_KEY}" } } } * ``` * * Supply the key in the execution request as `"variableOverrides": { "PYTH_API_KEY": "..." }`. * * _**Example**_: The Pyth SOL/USD push oracle price. * * ```json * { "oracleTask": { "pythPushFeedId": "0xef0d8b6fda2ceba41da15d4095d1da392a0d2f8ed0c6c7bc0f4cfac8c280b56d", "pythConfigs": { "pushFeedShardId": 0, "maxStaleSeconds": 75 } } } * ``` * * _**Example**_: The Chainlink SOL/USD oracle price. * * ```json * { "oracleTask": { "chainlinkAddress": "CcPVS9bqyXbD9cLnTbhhHazLsrua8QMFUHTutPtjyDzq" } } * ``` */ class OracleTask implements IOracleTask { /** * Constructs a new OracleTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IOracleTask); /** Mainnet address of a Switchboard feed. Switchboard is decentralized and allows anyone to build their own feed. */ public switchboardAddress?: (string|null); /** Mainnet address for a Pyth feed. A full list can be found here: https://pyth.network/price-feeds/ */ public pythAddress?: (string|null); /** Mainnet address for a Chainlink feed. A full list can be found here: https://docs.chain.link/docs/solana/data-feeds-solana */ public chainlinkAddress?: (string|null); /** OracleTask edgeId. */ public edgeId?: (string|null); /** OracleTask redstoneId. */ public redstoneId?: (string|null); /** Pyth price feed ID for an upgraded Solana push feed. The task derives and reads the on-chain feed account using this ID and pyth_configs.push_feed_shard_id; it does not use Hermes or a Hermes API key. */ public pythPushFeedId?: (string|null); /** * Value (as a percentage) that the lower bound confidence interval is of the actual value. * Confidence intervals that are larger that this treshold are rejected. * * The confidence interval should be provided as a raw percentage value. For example, to * represent 10%, enter the value as 10, not 0.1. */ public pythAllowedConfidenceInterval: number; /** OracleTask chainlinkConfigs. */ public chainlinkConfigs?: (oracle_job.OracleJob.OracleTask.IChainlinkConfigs|null); /** Optional settings for Pyth Hermes and on-chain push-feed tasks. */ public pythConfigs?: (oracle_job.OracleJob.OracleTask.IPythConfigs|null); /** OracleTask switchboardConfigs. */ public switchboardConfigs?: (oracle_job.OracleJob.OracleTask.ISwitchboardConfigs|null); /** OracleTask edgeConfigs. */ public edgeConfigs?: (oracle_job.OracleJob.OracleTask.IEdgeConfigs|null); /** OracleTask redstoneConfigs. */ public redstoneConfigs?: (oracle_job.OracleJob.OracleTask.IRedstoneConfigs|null); /** OracleTask AggregatorAddress. */ public AggregatorAddress?: ("switchboardAddress"|"pythAddress"|"chainlinkAddress"|"edgeId"|"redstoneId"|"pythPushFeedId"); /** * Creates a new OracleTask instance using the specified properties. * @param [properties] Properties to set * @returns OracleTask instance */ public static create(properties?: oracle_job.OracleJob.IOracleTask): oracle_job.OracleJob.OracleTask; /** * Encodes the specified OracleTask message. Does not implicitly {@link oracle_job.OracleJob.OracleTask.verify|verify} messages. * @param message OracleTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IOracleTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified OracleTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.OracleTask.verify|verify} messages. * @param message OracleTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IOracleTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an OracleTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns OracleTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.OracleTask; /** * Decodes an OracleTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns OracleTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.OracleTask; /** * Verifies an OracleTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an OracleTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns OracleTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.OracleTask; /** * Creates a plain object from an OracleTask message. Also converts values to other types if specified. * @param message OracleTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.OracleTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this OracleTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for OracleTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace OracleTask { /** Properties of a ChainlinkConfigs. */ interface IChainlinkConfigs { /** ChainlinkConfigs provider */ provider?: (string|null); } /** Represents a ChainlinkConfigs. */ class ChainlinkConfigs implements IChainlinkConfigs { /** * Constructs a new ChainlinkConfigs. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.OracleTask.IChainlinkConfigs); /** ChainlinkConfigs provider. */ public provider: string; /** * Creates a new ChainlinkConfigs instance using the specified properties. * @param [properties] Properties to set * @returns ChainlinkConfigs instance */ public static create(properties?: oracle_job.OracleJob.OracleTask.IChainlinkConfigs): oracle_job.OracleJob.OracleTask.ChainlinkConfigs; /** * Encodes the specified ChainlinkConfigs message. Does not implicitly {@link oracle_job.OracleJob.OracleTask.ChainlinkConfigs.verify|verify} messages. * @param message ChainlinkConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.OracleTask.IChainlinkConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified ChainlinkConfigs message, length delimited. Does not implicitly {@link oracle_job.OracleJob.OracleTask.ChainlinkConfigs.verify|verify} messages. * @param message ChainlinkConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.OracleTask.IChainlinkConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a ChainlinkConfigs message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns ChainlinkConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.OracleTask.ChainlinkConfigs; /** * Decodes a ChainlinkConfigs message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns ChainlinkConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.OracleTask.ChainlinkConfigs; /** * Verifies a ChainlinkConfigs message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a ChainlinkConfigs message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns ChainlinkConfigs */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.OracleTask.ChainlinkConfigs; /** * Creates a plain object from a ChainlinkConfigs message. Also converts values to other types if specified. * @param message ChainlinkConfigs * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.OracleTask.ChainlinkConfigs, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this ChainlinkConfigs to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for ChainlinkConfigs * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PythConfigs. */ interface IPythConfigs { /** Optional Hermes base URL used by pyth_address tasks. */ hermesUrl?: (string|null); /** * Preferred Pyth confidence interval setting, expressed as a raw percentage. * For example, use 10 to represent 10%, not 0.1. */ pythAllowedConfidenceInterval?: (number|null); /** * Maximum accepted price age in seconds. * Defaults to 15 seconds for pyth_address and 75 seconds for pyth_push_feed_id. */ maxStaleSeconds?: (number|null); /** Pyth push-feed shard used only by pyth_push_feed_id. Defaults to shard 0. */ pushFeedShardId?: (number|null); /** * Optional API key for authenticated Pyth Hermes requests made by pyth_address tasks. * Use a variable placeholder such as `${PYTH_API_KEY}` and supply a matching non-empty variableOverrides value at execution time; do not hardcode credentials. * This field takes precedence when it is non-empty. If it is omitted or empty, variableOverrides.PYTH_API_KEY is accepted as a compatibility fallback. * That fallback is request-wide: the same value is used by every pyth_address task in the execution that does not configure its own api_key. * Pyth push-feed tasks read on-chain accounts and do not use this API key. */ apiKey?: (string|null); } /** Represents a PythConfigs. */ class PythConfigs implements IPythConfigs { /** * Constructs a new PythConfigs. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.OracleTask.IPythConfigs); /** Optional Hermes base URL used by pyth_address tasks. */ public hermesUrl: string; /** * Preferred Pyth confidence interval setting, expressed as a raw percentage. * For example, use 10 to represent 10%, not 0.1. */ public pythAllowedConfidenceInterval: number; /** * Maximum accepted price age in seconds. * Defaults to 15 seconds for pyth_address and 75 seconds for pyth_push_feed_id. */ public maxStaleSeconds: number; /** Pyth push-feed shard used only by pyth_push_feed_id. Defaults to shard 0. */ public pushFeedShardId: number; /** * Optional API key for authenticated Pyth Hermes requests made by pyth_address tasks. * Use a variable placeholder such as `${PYTH_API_KEY}` and supply a matching non-empty variableOverrides value at execution time; do not hardcode credentials. * This field takes precedence when it is non-empty. If it is omitted or empty, variableOverrides.PYTH_API_KEY is accepted as a compatibility fallback. * That fallback is request-wide: the same value is used by every pyth_address task in the execution that does not configure its own api_key. * Pyth push-feed tasks read on-chain accounts and do not use this API key. */ public apiKey: string; /** * Creates a new PythConfigs instance using the specified properties. * @param [properties] Properties to set * @returns PythConfigs instance */ public static create(properties?: oracle_job.OracleJob.OracleTask.IPythConfigs): oracle_job.OracleJob.OracleTask.PythConfigs; /** * Encodes the specified PythConfigs message. Does not implicitly {@link oracle_job.OracleJob.OracleTask.PythConfigs.verify|verify} messages. * @param message PythConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.OracleTask.IPythConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified PythConfigs message, length delimited. Does not implicitly {@link oracle_job.OracleJob.OracleTask.PythConfigs.verify|verify} messages. * @param message PythConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.OracleTask.IPythConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a PythConfigs message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns PythConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.OracleTask.PythConfigs; /** * Decodes a PythConfigs message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns PythConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.OracleTask.PythConfigs; /** * Verifies a PythConfigs message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a PythConfigs message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns PythConfigs */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.OracleTask.PythConfigs; /** * Creates a plain object from a PythConfigs message. Also converts values to other types if specified. * @param message PythConfigs * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.OracleTask.PythConfigs, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this PythConfigs to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for PythConfigs * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SwitchboardConfigs. */ interface ISwitchboardConfigs { /** SwitchboardConfigs version */ version?: (number|null); /** SwitchboardConfigs jobs */ jobs?: (oracle_job.IOracleJob[]|null); } /** Represents a SwitchboardConfigs. */ class SwitchboardConfigs implements ISwitchboardConfigs { /** * Constructs a new SwitchboardConfigs. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.OracleTask.ISwitchboardConfigs); /** SwitchboardConfigs version. */ public version: number; /** SwitchboardConfigs jobs. */ public jobs: oracle_job.IOracleJob[]; /** * Creates a new SwitchboardConfigs instance using the specified properties. * @param [properties] Properties to set * @returns SwitchboardConfigs instance */ public static create(properties?: oracle_job.OracleJob.OracleTask.ISwitchboardConfigs): oracle_job.OracleJob.OracleTask.SwitchboardConfigs; /** * Encodes the specified SwitchboardConfigs message. Does not implicitly {@link oracle_job.OracleJob.OracleTask.SwitchboardConfigs.verify|verify} messages. * @param message SwitchboardConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.OracleTask.ISwitchboardConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SwitchboardConfigs message, length delimited. Does not implicitly {@link oracle_job.OracleJob.OracleTask.SwitchboardConfigs.verify|verify} messages. * @param message SwitchboardConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.OracleTask.ISwitchboardConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SwitchboardConfigs message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SwitchboardConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.OracleTask.SwitchboardConfigs; /** * Decodes a SwitchboardConfigs message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SwitchboardConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.OracleTask.SwitchboardConfigs; /** * Verifies a SwitchboardConfigs message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SwitchboardConfigs message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SwitchboardConfigs */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.OracleTask.SwitchboardConfigs; /** * Creates a plain object from a SwitchboardConfigs message. Also converts values to other types if specified. * @param message SwitchboardConfigs * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.OracleTask.SwitchboardConfigs, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SwitchboardConfigs to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SwitchboardConfigs * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an EdgeConfigs. */ interface IEdgeConfigs { } /** Represents an EdgeConfigs. */ class EdgeConfigs implements IEdgeConfigs { /** * Constructs a new EdgeConfigs. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.OracleTask.IEdgeConfigs); /** * Creates a new EdgeConfigs instance using the specified properties. * @param [properties] Properties to set * @returns EdgeConfigs instance */ public static create(properties?: oracle_job.OracleJob.OracleTask.IEdgeConfigs): oracle_job.OracleJob.OracleTask.EdgeConfigs; /** * Encodes the specified EdgeConfigs message. Does not implicitly {@link oracle_job.OracleJob.OracleTask.EdgeConfigs.verify|verify} messages. * @param message EdgeConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.OracleTask.IEdgeConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified EdgeConfigs message, length delimited. Does not implicitly {@link oracle_job.OracleJob.OracleTask.EdgeConfigs.verify|verify} messages. * @param message EdgeConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.OracleTask.IEdgeConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an EdgeConfigs message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns EdgeConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.OracleTask.EdgeConfigs; /** * Decodes an EdgeConfigs message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns EdgeConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.OracleTask.EdgeConfigs; /** * Verifies an EdgeConfigs message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an EdgeConfigs message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns EdgeConfigs */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.OracleTask.EdgeConfigs; /** * Creates a plain object from an EdgeConfigs message. Also converts values to other types if specified. * @param message EdgeConfigs * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.OracleTask.EdgeConfigs, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this EdgeConfigs to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for EdgeConfigs * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a RedstoneConfigs. */ interface IRedstoneConfigs { } /** Represents a RedstoneConfigs. */ class RedstoneConfigs implements IRedstoneConfigs { /** * Constructs a new RedstoneConfigs. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.OracleTask.IRedstoneConfigs); /** * Creates a new RedstoneConfigs instance using the specified properties. * @param [properties] Properties to set * @returns RedstoneConfigs instance */ public static create(properties?: oracle_job.OracleJob.OracleTask.IRedstoneConfigs): oracle_job.OracleJob.OracleTask.RedstoneConfigs; /** * Encodes the specified RedstoneConfigs message. Does not implicitly {@link oracle_job.OracleJob.OracleTask.RedstoneConfigs.verify|verify} messages. * @param message RedstoneConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.OracleTask.IRedstoneConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified RedstoneConfigs message, length delimited. Does not implicitly {@link oracle_job.OracleJob.OracleTask.RedstoneConfigs.verify|verify} messages. * @param message RedstoneConfigs message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.OracleTask.IRedstoneConfigs, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a RedstoneConfigs message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns RedstoneConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.OracleTask.RedstoneConfigs; /** * Decodes a RedstoneConfigs message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns RedstoneConfigs * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.OracleTask.RedstoneConfigs; /** * Verifies a RedstoneConfigs message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a RedstoneConfigs message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns RedstoneConfigs */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.OracleTask.RedstoneConfigs; /** * Creates a plain object from a RedstoneConfigs message. Also converts values to other types if specified. * @param message RedstoneConfigs * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.OracleTask.RedstoneConfigs, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this RedstoneConfigs to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for RedstoneConfigs * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } } /** Properties of an AnchorFetchTask. */ interface IAnchorFetchTask { /** Owning program of the account to parse. */ programId?: (string|null); /** The account to parse. */ accountAddress?: (string|null); } /** Load a parse an Anchor based solana account. */ class AnchorFetchTask implements IAnchorFetchTask { /** * Constructs a new AnchorFetchTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IAnchorFetchTask); /** Owning program of the account to parse. */ public programId: string; /** The account to parse. */ public accountAddress: string; /** * Creates a new AnchorFetchTask instance using the specified properties. * @param [properties] Properties to set * @returns AnchorFetchTask instance */ public static create(properties?: oracle_job.OracleJob.IAnchorFetchTask): oracle_job.OracleJob.AnchorFetchTask; /** * Encodes the specified AnchorFetchTask message. Does not implicitly {@link oracle_job.OracleJob.AnchorFetchTask.verify|verify} messages. * @param message AnchorFetchTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IAnchorFetchTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified AnchorFetchTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.AnchorFetchTask.verify|verify} messages. * @param message AnchorFetchTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IAnchorFetchTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an AnchorFetchTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns AnchorFetchTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.AnchorFetchTask; /** * Decodes an AnchorFetchTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns AnchorFetchTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.AnchorFetchTask; /** * Verifies an AnchorFetchTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an AnchorFetchTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns AnchorFetchTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.AnchorFetchTask; /** * Creates a plain object from an AnchorFetchTask message. Also converts values to other types if specified. * @param message AnchorFetchTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.AnchorFetchTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this AnchorFetchTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for AnchorFetchTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SplStakePoolTask. */ interface ISplStakePoolTask { /** The pubkey of the SPL Stake Pool. */ pubkey?: (string|null); } /** Fetch the JSON representation of an SPL Stake Pool account. */ class SplStakePoolTask implements ISplStakePoolTask { /** * Constructs a new SplStakePoolTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISplStakePoolTask); /** The pubkey of the SPL Stake Pool. */ public pubkey: string; /** * Creates a new SplStakePoolTask instance using the specified properties. * @param [properties] Properties to set * @returns SplStakePoolTask instance */ public static create(properties?: oracle_job.OracleJob.ISplStakePoolTask): oracle_job.OracleJob.SplStakePoolTask; /** * Encodes the specified SplStakePoolTask message. Does not implicitly {@link oracle_job.OracleJob.SplStakePoolTask.verify|verify} messages. * @param message SplStakePoolTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISplStakePoolTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SplStakePoolTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SplStakePoolTask.verify|verify} messages. * @param message SplStakePoolTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISplStakePoolTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SplStakePoolTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SplStakePoolTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SplStakePoolTask; /** * Decodes a SplStakePoolTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SplStakePoolTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SplStakePoolTask; /** * Verifies a SplStakePoolTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SplStakePoolTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SplStakePoolTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SplStakePoolTask; /** * Creates a plain object from a SplStakePoolTask message. Also converts values to other types if specified. * @param message SplStakePoolTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SplStakePoolTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SplStakePoolTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SplStakePoolTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SplTokenParseTask. */ interface ISplTokenParseTask { /** The publicKey of a token account to fetch the mintInfo for. */ tokenAccountAddress?: (string|null); /** The publicKey of the token mint address. */ mintAddress?: (string|null); } /** Fetch the JSON representation of an SPL token mint. */ class SplTokenParseTask implements ISplTokenParseTask { /** * Constructs a new SplTokenParseTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISplTokenParseTask); /** The publicKey of a token account to fetch the mintInfo for. */ public tokenAccountAddress?: (string|null); /** The publicKey of the token mint address. */ public mintAddress?: (string|null); /** SplTokenParseTask AccountAddress. */ public AccountAddress?: ("tokenAccountAddress"|"mintAddress"); /** * Creates a new SplTokenParseTask instance using the specified properties. * @param [properties] Properties to set * @returns SplTokenParseTask instance */ public static create(properties?: oracle_job.OracleJob.ISplTokenParseTask): oracle_job.OracleJob.SplTokenParseTask; /** * Encodes the specified SplTokenParseTask message. Does not implicitly {@link oracle_job.OracleJob.SplTokenParseTask.verify|verify} messages. * @param message SplTokenParseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISplTokenParseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SplTokenParseTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SplTokenParseTask.verify|verify} messages. * @param message SplTokenParseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISplTokenParseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SplTokenParseTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SplTokenParseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SplTokenParseTask; /** * Decodes a SplTokenParseTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SplTokenParseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SplTokenParseTask; /** * Verifies a SplTokenParseTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SplTokenParseTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SplTokenParseTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SplTokenParseTask; /** * Creates a plain object from a SplTokenParseTask message. Also converts values to other types if specified. * @param message SplTokenParseTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SplTokenParseTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SplTokenParseTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SplTokenParseTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an UniswapExchangeRateTask. */ interface IUniswapExchangeRateTask { /** The input token address. */ inTokenAddress?: (string|null); /** The output token address. */ outTokenAddress?: (string|null); /** The amount of tokens to swap. */ inTokenAmount?: (number|null); /** The allowable slippage in percent for the swap. */ slippage?: (number|null); /** The RPC provider to use for the swap. */ provider?: (string|null); /** The version of the Uniswap exchange to use. */ version?: (oracle_job.OracleJob.UniswapExchangeRateTask.Version|null); /** UniswapExchangeRateTask routerAddress */ routerAddress?: (string|null); /** UniswapExchangeRateTask factoryAddress */ factoryAddress?: (string|null); /** UniswapExchangeRateTask quoterAddress */ quoterAddress?: (string|null); } /** Fetch the swap price from UniSwap. */ class UniswapExchangeRateTask implements IUniswapExchangeRateTask { /** * Constructs a new UniswapExchangeRateTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IUniswapExchangeRateTask); /** The input token address. */ public inTokenAddress: string; /** The output token address. */ public outTokenAddress: string; /** The amount of tokens to swap. */ public inTokenAmount: number; /** The allowable slippage in percent for the swap. */ public slippage: number; /** The RPC provider to use for the swap. */ public provider: string; /** The version of the Uniswap exchange to use. */ public version: oracle_job.OracleJob.UniswapExchangeRateTask.Version; /** UniswapExchangeRateTask routerAddress. */ public routerAddress: string; /** UniswapExchangeRateTask factoryAddress. */ public factoryAddress: string; /** UniswapExchangeRateTask quoterAddress. */ public quoterAddress: string; /** * Creates a new UniswapExchangeRateTask instance using the specified properties. * @param [properties] Properties to set * @returns UniswapExchangeRateTask instance */ public static create(properties?: oracle_job.OracleJob.IUniswapExchangeRateTask): oracle_job.OracleJob.UniswapExchangeRateTask; /** * Encodes the specified UniswapExchangeRateTask message. Does not implicitly {@link oracle_job.OracleJob.UniswapExchangeRateTask.verify|verify} messages. * @param message UniswapExchangeRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IUniswapExchangeRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified UniswapExchangeRateTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.UniswapExchangeRateTask.verify|verify} messages. * @param message UniswapExchangeRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IUniswapExchangeRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an UniswapExchangeRateTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns UniswapExchangeRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.UniswapExchangeRateTask; /** * Decodes an UniswapExchangeRateTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns UniswapExchangeRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.UniswapExchangeRateTask; /** * Verifies an UniswapExchangeRateTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an UniswapExchangeRateTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns UniswapExchangeRateTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.UniswapExchangeRateTask; /** * Creates a plain object from an UniswapExchangeRateTask message. Also converts values to other types if specified. * @param message UniswapExchangeRateTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.UniswapExchangeRateTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this UniswapExchangeRateTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for UniswapExchangeRateTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace UniswapExchangeRateTask { /** Version enum. */ enum Version { VERSION_V2_DEPRECATED = 0, VERSION_V3_DEPRECATED = 1, VERSION_V2 = 2, VERSION_V3 = 3 } } /** Properties of a SushiswapExchangeRateTask. */ interface ISushiswapExchangeRateTask { /** The input token address. */ inTokenAddress?: (string|null); /** The output token address. */ outTokenAddress?: (string|null); /** The amount of tokens to swap. */ inTokenAmount?: (number|null); /** The allowable slippage in percent for the swap. */ slippage?: (number|null); /** The RPC provider to use for the swap. */ provider?: (string|null); } /** Fetch the swap price from SushiSwap. */ class SushiswapExchangeRateTask implements ISushiswapExchangeRateTask { /** * Constructs a new SushiswapExchangeRateTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISushiswapExchangeRateTask); /** The input token address. */ public inTokenAddress: string; /** The output token address. */ public outTokenAddress: string; /** The amount of tokens to swap. */ public inTokenAmount: number; /** The allowable slippage in percent for the swap. */ public slippage: number; /** The RPC provider to use for the swap. */ public provider: string; /** * Creates a new SushiswapExchangeRateTask instance using the specified properties. * @param [properties] Properties to set * @returns SushiswapExchangeRateTask instance */ public static create(properties?: oracle_job.OracleJob.ISushiswapExchangeRateTask): oracle_job.OracleJob.SushiswapExchangeRateTask; /** * Encodes the specified SushiswapExchangeRateTask message. Does not implicitly {@link oracle_job.OracleJob.SushiswapExchangeRateTask.verify|verify} messages. * @param message SushiswapExchangeRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISushiswapExchangeRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SushiswapExchangeRateTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SushiswapExchangeRateTask.verify|verify} messages. * @param message SushiswapExchangeRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISushiswapExchangeRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SushiswapExchangeRateTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SushiswapExchangeRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SushiswapExchangeRateTask; /** * Decodes a SushiswapExchangeRateTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SushiswapExchangeRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SushiswapExchangeRateTask; /** * Verifies a SushiswapExchangeRateTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SushiswapExchangeRateTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SushiswapExchangeRateTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SushiswapExchangeRateTask; /** * Creates a plain object from a SushiswapExchangeRateTask message. Also converts values to other types if specified. * @param message SushiswapExchangeRateTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SushiswapExchangeRateTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SushiswapExchangeRateTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SushiswapExchangeRateTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PancakeswapExchangeRateTask. */ interface IPancakeswapExchangeRateTask { /** The input token address. */ inTokenAddress?: (string|null); /** The output token address. */ outTokenAddress?: (string|null); /** The amount of tokens to swap. */ inTokenAmount?: (number|null); /** The allowable slippage in percent for the swap. */ slippage?: (number|null); /** The RPC provider to use for the swap. */ provider?: (string|null); } /** Fetch the swap price from PancakeSwap. */ class PancakeswapExchangeRateTask implements IPancakeswapExchangeRateTask { /** * Constructs a new PancakeswapExchangeRateTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IPancakeswapExchangeRateTask); /** The input token address. */ public inTokenAddress: string; /** The output token address. */ public outTokenAddress: string; /** The amount of tokens to swap. */ public inTokenAmount: number; /** The allowable slippage in percent for the swap. */ public slippage: number; /** The RPC provider to use for the swap. */ public provider: string; /** * Creates a new PancakeswapExchangeRateTask instance using the specified properties. * @param [properties] Properties to set * @returns PancakeswapExchangeRateTask instance */ public static create(properties?: oracle_job.OracleJob.IPancakeswapExchangeRateTask): oracle_job.OracleJob.PancakeswapExchangeRateTask; /** * Encodes the specified PancakeswapExchangeRateTask message. Does not implicitly {@link oracle_job.OracleJob.PancakeswapExchangeRateTask.verify|verify} messages. * @param message PancakeswapExchangeRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IPancakeswapExchangeRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified PancakeswapExchangeRateTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.PancakeswapExchangeRateTask.verify|verify} messages. * @param message PancakeswapExchangeRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IPancakeswapExchangeRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a PancakeswapExchangeRateTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns PancakeswapExchangeRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.PancakeswapExchangeRateTask; /** * Decodes a PancakeswapExchangeRateTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns PancakeswapExchangeRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.PancakeswapExchangeRateTask; /** * Verifies a PancakeswapExchangeRateTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a PancakeswapExchangeRateTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns PancakeswapExchangeRateTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.PancakeswapExchangeRateTask; /** * Creates a plain object from a PancakeswapExchangeRateTask message. Also converts values to other types if specified. * @param message PancakeswapExchangeRateTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.PancakeswapExchangeRateTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this PancakeswapExchangeRateTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for PancakeswapExchangeRateTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CacheTask. */ interface ICacheTask { /** A list of cached variables to reference in the job with `${VARIABLE_NAME}`. */ cacheItems?: (oracle_job.OracleJob.CacheTask.ICacheItem[]|null); } /** * Execute a job and store the result in a variable to reference later. * * _**Input**_: None * * _**Returns**_: The input * * _**Example**_: CacheTask storing ${ONE} = 1 * * ```json * { "cacheTask": { "cacheItems": [ { "variableName": "ONE", "job": { "tasks": [ { "valueTask": { "value": 1 } } ] } } ] } } * ``` */ class CacheTask implements ICacheTask { /** * Constructs a new CacheTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ICacheTask); /** A list of cached variables to reference in the job with `${VARIABLE_NAME}`. */ public cacheItems: oracle_job.OracleJob.CacheTask.ICacheItem[]; /** * Creates a new CacheTask instance using the specified properties. * @param [properties] Properties to set * @returns CacheTask instance */ public static create(properties?: oracle_job.OracleJob.ICacheTask): oracle_job.OracleJob.CacheTask; /** * Encodes the specified CacheTask message. Does not implicitly {@link oracle_job.OracleJob.CacheTask.verify|verify} messages. * @param message CacheTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ICacheTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified CacheTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.CacheTask.verify|verify} messages. * @param message CacheTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ICacheTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a CacheTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns CacheTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.CacheTask; /** * Decodes a CacheTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns CacheTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.CacheTask; /** * Verifies a CacheTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a CacheTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns CacheTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.CacheTask; /** * Creates a plain object from a CacheTask message. Also converts values to other types if specified. * @param message CacheTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.CacheTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this CacheTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for CacheTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace CacheTask { /** Properties of a CacheItem. */ interface ICacheItem { /** The name of the variable to store in cache to reference later with `${VARIABLE_NAME}`. */ variableName?: (string|null); /** The OracleJob to execute to yield the value to store in cache. */ job?: (oracle_job.IOracleJob|null); } /** Represents a CacheItem. */ class CacheItem implements ICacheItem { /** * Constructs a new CacheItem. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.CacheTask.ICacheItem); /** The name of the variable to store in cache to reference later with `${VARIABLE_NAME}`. */ public variableName: string; /** The OracleJob to execute to yield the value to store in cache. */ public job?: (oracle_job.IOracleJob|null); /** * Creates a new CacheItem instance using the specified properties. * @param [properties] Properties to set * @returns CacheItem instance */ public static create(properties?: oracle_job.OracleJob.CacheTask.ICacheItem): oracle_job.OracleJob.CacheTask.CacheItem; /** * Encodes the specified CacheItem message. Does not implicitly {@link oracle_job.OracleJob.CacheTask.CacheItem.verify|verify} messages. * @param message CacheItem message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.CacheTask.ICacheItem, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified CacheItem message, length delimited. Does not implicitly {@link oracle_job.OracleJob.CacheTask.CacheItem.verify|verify} messages. * @param message CacheItem message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.CacheTask.ICacheItem, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a CacheItem message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns CacheItem * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.CacheTask.CacheItem; /** * Decodes a CacheItem message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns CacheItem * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.CacheTask.CacheItem; /** * Verifies a CacheItem message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a CacheItem message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns CacheItem */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.CacheTask.CacheItem; /** * Creates a plain object from a CacheItem message. Also converts values to other types if specified. * @param message CacheItem * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.CacheTask.CacheItem, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this CacheItem to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for CacheItem * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } } /** Properties of a SysclockOffsetTask. */ interface ISysclockOffsetTask { } /** Return the difference between an oracle's clock and the current timestamp at `SYSVAR_CLOCK_PUBKEY`. */ class SysclockOffsetTask implements ISysclockOffsetTask { /** * Constructs a new SysclockOffsetTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISysclockOffsetTask); /** * Creates a new SysclockOffsetTask instance using the specified properties. * @param [properties] Properties to set * @returns SysclockOffsetTask instance */ public static create(properties?: oracle_job.OracleJob.ISysclockOffsetTask): oracle_job.OracleJob.SysclockOffsetTask; /** * Encodes the specified SysclockOffsetTask message. Does not implicitly {@link oracle_job.OracleJob.SysclockOffsetTask.verify|verify} messages. * @param message SysclockOffsetTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISysclockOffsetTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SysclockOffsetTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SysclockOffsetTask.verify|verify} messages. * @param message SysclockOffsetTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISysclockOffsetTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SysclockOffsetTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SysclockOffsetTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SysclockOffsetTask; /** * Decodes a SysclockOffsetTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SysclockOffsetTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SysclockOffsetTask; /** * Verifies a SysclockOffsetTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SysclockOffsetTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SysclockOffsetTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SysclockOffsetTask; /** * Creates a plain object from a SysclockOffsetTask message. Also converts values to other types if specified. * @param message SysclockOffsetTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SysclockOffsetTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SysclockOffsetTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SysclockOffsetTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MarinadeStateTask. */ interface IMarinadeStateTask { } /** * Fetch the current mSOL/SOL exchange rate from the Marinade program state. * * _**Input**_: None * * _**Returns**_: The current value of 1 mSOL in SOL. * * _**Example**_: Fetch the mSOL/SOL exchange rate * * ```json * { "marinadeStateTask": {} } * ``` */ class MarinadeStateTask implements IMarinadeStateTask { /** * Constructs a new MarinadeStateTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMarinadeStateTask); /** * Creates a new MarinadeStateTask instance using the specified properties. * @param [properties] Properties to set * @returns MarinadeStateTask instance */ public static create(properties?: oracle_job.OracleJob.IMarinadeStateTask): oracle_job.OracleJob.MarinadeStateTask; /** * Encodes the specified MarinadeStateTask message. Does not implicitly {@link oracle_job.OracleJob.MarinadeStateTask.verify|verify} messages. * @param message MarinadeStateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMarinadeStateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MarinadeStateTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MarinadeStateTask.verify|verify} messages. * @param message MarinadeStateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMarinadeStateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MarinadeStateTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MarinadeStateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MarinadeStateTask; /** * Decodes a MarinadeStateTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MarinadeStateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MarinadeStateTask; /** * Verifies a MarinadeStateTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MarinadeStateTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MarinadeStateTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MarinadeStateTask; /** * Creates a plain object from a MarinadeStateTask message. Also converts values to other types if specified. * @param message MarinadeStateTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MarinadeStateTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MarinadeStateTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MarinadeStateTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SolanaAccountDataFetchTask. */ interface ISolanaAccountDataFetchTask { /** The on-chain account to fetch the account data from. */ pubkey?: (string|null); /** SolanaAccountDataFetchTask network */ network?: (oracle_job.OracleJob.SolanaAccountDataFetchTask.Network|null); } /** Fetch the account data in a stringified buffer format. */ class SolanaAccountDataFetchTask implements ISolanaAccountDataFetchTask { /** * Constructs a new SolanaAccountDataFetchTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISolanaAccountDataFetchTask); /** The on-chain account to fetch the account data from. */ public pubkey: string; /** SolanaAccountDataFetchTask network. */ public network: oracle_job.OracleJob.SolanaAccountDataFetchTask.Network; /** * Creates a new SolanaAccountDataFetchTask instance using the specified properties. * @param [properties] Properties to set * @returns SolanaAccountDataFetchTask instance */ public static create(properties?: oracle_job.OracleJob.ISolanaAccountDataFetchTask): oracle_job.OracleJob.SolanaAccountDataFetchTask; /** * Encodes the specified SolanaAccountDataFetchTask message. Does not implicitly {@link oracle_job.OracleJob.SolanaAccountDataFetchTask.verify|verify} messages. * @param message SolanaAccountDataFetchTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISolanaAccountDataFetchTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SolanaAccountDataFetchTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SolanaAccountDataFetchTask.verify|verify} messages. * @param message SolanaAccountDataFetchTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISolanaAccountDataFetchTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SolanaAccountDataFetchTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SolanaAccountDataFetchTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SolanaAccountDataFetchTask; /** * Decodes a SolanaAccountDataFetchTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SolanaAccountDataFetchTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SolanaAccountDataFetchTask; /** * Verifies a SolanaAccountDataFetchTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SolanaAccountDataFetchTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SolanaAccountDataFetchTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SolanaAccountDataFetchTask; /** * Creates a plain object from a SolanaAccountDataFetchTask message. Also converts values to other types if specified. * @param message SolanaAccountDataFetchTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SolanaAccountDataFetchTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SolanaAccountDataFetchTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SolanaAccountDataFetchTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace SolanaAccountDataFetchTask { /** Network enum. */ enum Network { NETWORK_MAINNET = 0, NETWORK_TESTNET = 1, NETWORK_DEVNET = 2 } } /** Properties of a CronParseTask. */ interface ICronParseTask { /** The cron pattern to parse. */ cronPattern?: (string|null); /** The timestamp offset to calculate the next run. */ clockOffset?: (number|null); /** Use the TaskRunner's clock or the on-chain SYSCLOCK. */ clock?: (oracle_job.OracleJob.CronParseTask.ClockType|null); } /** * Return a timestamp from a crontab instruction. * * _**Input**_: None * * _**Returns**_: A timestamp * * _**Example**_: Return the unix timestamp for the on-chain SYSCLOCK * * ```json * {"cronParseTask":{"cronPattern":"* * * * * *","clockOffset":0,"clock":"SYSCLOCK"}} * ``` * * _**Example**_: Return the unix timestamp for next friday at 5pm UTC * * ```json * {"cronParseTask":{"cronPattern":"0 17 * * 5","clockOffset":0,"clock":0}} * ``` */ class CronParseTask implements ICronParseTask { /** * Constructs a new CronParseTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ICronParseTask); /** The cron pattern to parse. */ public cronPattern: string; /** The timestamp offset to calculate the next run. */ public clockOffset: number; /** Use the TaskRunner's clock or the on-chain SYSCLOCK. */ public clock: oracle_job.OracleJob.CronParseTask.ClockType; /** * Creates a new CronParseTask instance using the specified properties. * @param [properties] Properties to set * @returns CronParseTask instance */ public static create(properties?: oracle_job.OracleJob.ICronParseTask): oracle_job.OracleJob.CronParseTask; /** * Encodes the specified CronParseTask message. Does not implicitly {@link oracle_job.OracleJob.CronParseTask.verify|verify} messages. * @param message CronParseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ICronParseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified CronParseTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.CronParseTask.verify|verify} messages. * @param message CronParseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ICronParseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a CronParseTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns CronParseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.CronParseTask; /** * Decodes a CronParseTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns CronParseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.CronParseTask; /** * Verifies a CronParseTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a CronParseTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns CronParseTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.CronParseTask; /** * Creates a plain object from a CronParseTask message. Also converts values to other types if specified. * @param message CronParseTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.CronParseTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this CronParseTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for CronParseTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace CronParseTask { /** ClockType enum. */ enum ClockType { ORACLE = 0, SYSCLOCK = 1 } } /** Properties of a BufferLayoutParseTask. */ interface IBufferLayoutParseTask { /** The buffer offset to start deserializing from. */ offset?: (number|null); /** The endianness of the stored value. */ endian?: (oracle_job.OracleJob.BufferLayoutParseTask.Endian|null); /** The type of value to deserialize. */ type?: (oracle_job.OracleJob.BufferLayoutParseTask.BufferParseType|null); } /** Return the deserialized value from a stringified buffer. */ class BufferLayoutParseTask implements IBufferLayoutParseTask { /** * Constructs a new BufferLayoutParseTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IBufferLayoutParseTask); /** The buffer offset to start deserializing from. */ public offset: number; /** The endianness of the stored value. */ public endian: oracle_job.OracleJob.BufferLayoutParseTask.Endian; /** The type of value to deserialize. */ public type: oracle_job.OracleJob.BufferLayoutParseTask.BufferParseType; /** * Creates a new BufferLayoutParseTask instance using the specified properties. * @param [properties] Properties to set * @returns BufferLayoutParseTask instance */ public static create(properties?: oracle_job.OracleJob.IBufferLayoutParseTask): oracle_job.OracleJob.BufferLayoutParseTask; /** * Encodes the specified BufferLayoutParseTask message. Does not implicitly {@link oracle_job.OracleJob.BufferLayoutParseTask.verify|verify} messages. * @param message BufferLayoutParseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IBufferLayoutParseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified BufferLayoutParseTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.BufferLayoutParseTask.verify|verify} messages. * @param message BufferLayoutParseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IBufferLayoutParseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a BufferLayoutParseTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns BufferLayoutParseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.BufferLayoutParseTask; /** * Decodes a BufferLayoutParseTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns BufferLayoutParseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.BufferLayoutParseTask; /** * Verifies a BufferLayoutParseTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a BufferLayoutParseTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns BufferLayoutParseTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.BufferLayoutParseTask; /** * Creates a plain object from a BufferLayoutParseTask message. Also converts values to other types if specified. * @param message BufferLayoutParseTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.BufferLayoutParseTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this BufferLayoutParseTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for BufferLayoutParseTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace BufferLayoutParseTask { /** Endian enum. */ enum Endian { LITTLE_ENDIAN = 0, BIG_ENDIAN = 1 } /** BufferParseType enum. */ enum BufferParseType { pubkey = 1, bool = 2, u8 = 3, i8 = 4, u16 = 5, i16 = 6, u32 = 7, i32 = 8, f32 = 9, u64 = 10, i64 = 11, f64 = 12, u128 = 13, i128 = 14 } } /** Properties of a HistoryFunctionTask. */ interface IHistoryFunctionTask { /** The reduction method to apply over the history buffer. */ method?: (oracle_job.OracleJob.HistoryFunctionTask.Method|null); /** The aggregator to query. */ aggregatorAddress?: (string|null); /** Lookback period in seconds. */ period?: (number|null); } /** * Compute a reduction (min/max) over an aggregator's history buffer. * * _**Input**_: Aggregator address, method, and lookback period (in seconds). * * _**Returns**_: The min or max value observed in the period. * * _**Example**_: Fetch the max price over the last hour * * ```json * { "historyFunctionTask": { "aggregatorAddress": "AGGREGATOR_PUBKEY", "method": "METHOD_MAX", "period": 3600 } } * ``` */ class HistoryFunctionTask implements IHistoryFunctionTask { /** * Constructs a new HistoryFunctionTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IHistoryFunctionTask); /** The reduction method to apply over the history buffer. */ public method: oracle_job.OracleJob.HistoryFunctionTask.Method; /** The aggregator to query. */ public aggregatorAddress: string; /** Lookback period in seconds. */ public period: number; /** * Creates a new HistoryFunctionTask instance using the specified properties. * @param [properties] Properties to set * @returns HistoryFunctionTask instance */ public static create(properties?: oracle_job.OracleJob.IHistoryFunctionTask): oracle_job.OracleJob.HistoryFunctionTask; /** * Encodes the specified HistoryFunctionTask message. Does not implicitly {@link oracle_job.OracleJob.HistoryFunctionTask.verify|verify} messages. * @param message HistoryFunctionTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IHistoryFunctionTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified HistoryFunctionTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.HistoryFunctionTask.verify|verify} messages. * @param message HistoryFunctionTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IHistoryFunctionTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a HistoryFunctionTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns HistoryFunctionTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.HistoryFunctionTask; /** * Decodes a HistoryFunctionTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns HistoryFunctionTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.HistoryFunctionTask; /** * Verifies a HistoryFunctionTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a HistoryFunctionTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns HistoryFunctionTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.HistoryFunctionTask; /** * Creates a plain object from a HistoryFunctionTask message. Also converts values to other types if specified. * @param message HistoryFunctionTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.HistoryFunctionTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this HistoryFunctionTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for HistoryFunctionTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace HistoryFunctionTask { /** Method enum. */ enum Method { METHOD_MIN = 0, METHOD_MAX = 1 } } /** Properties of a VwapTask. */ interface IVwapTask { /** The aggregator that provides price samples. */ priceAggregatorAddress?: (string|null); /** The aggregator that provides volume samples. */ volumeAggregatorAddress?: (string|null); /** Lookback period in seconds. */ period?: (number|null); } /** * Compute a volume-weighted average price (VWAP) using price and volume aggregators. * * _**Input**_: Price aggregator address, volume aggregator address, and lookback period (in seconds). * * _**Returns**_: The VWAP over the specified period. * * _**Example**_: Compute the 1h VWAP for a price/volume pair * * ```json * { "vwapTask": { "priceAggregatorAddress": "PRICE_AGGREGATOR", "volumeAggregatorAddress": "VOLUME_AGGREGATOR", "period": 3600 } } * ``` */ class VwapTask implements IVwapTask { /** * Constructs a new VwapTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IVwapTask); /** The aggregator that provides price samples. */ public priceAggregatorAddress: string; /** The aggregator that provides volume samples. */ public volumeAggregatorAddress: string; /** Lookback period in seconds. */ public period: number; /** * Creates a new VwapTask instance using the specified properties. * @param [properties] Properties to set * @returns VwapTask instance */ public static create(properties?: oracle_job.OracleJob.IVwapTask): oracle_job.OracleJob.VwapTask; /** * Encodes the specified VwapTask message. Does not implicitly {@link oracle_job.OracleJob.VwapTask.verify|verify} messages. * @param message VwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IVwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified VwapTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.VwapTask.verify|verify} messages. * @param message VwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IVwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a VwapTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns VwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.VwapTask; /** * Decodes a VwapTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns VwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.VwapTask; /** * Verifies a VwapTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a VwapTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns VwapTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.VwapTask; /** * Creates a plain object from a VwapTask message. Also converts values to other types if specified. * @param message VwapTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.VwapTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this VwapTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for VwapTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an EwmaTask. */ interface IEwmaTask { /** The aggregator to query. */ aggregatorAddress?: (string|null); /** Lookback period in seconds. */ period?: (number|null); /** Smoothing factor in the range (0, 1]. */ lambda?: (number|null); } /** * Compute an exponentially weighted moving average (EWMA) over an aggregator's history buffer. * * _**Input**_: Aggregator address, lookback period (in seconds), and smoothing factor `lambda`. * * _**Returns**_: The EWMA value over the specified period. * * _**Example**_: Compute the 1h EWMA with lambda 0.94 * * ```json * { "ewmaTask": { "aggregatorAddress": "AGGREGATOR_PUBKEY", "period": 3600, "lambda": 0.94 } } * ``` */ class EwmaTask implements IEwmaTask { /** * Constructs a new EwmaTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IEwmaTask); /** The aggregator to query. */ public aggregatorAddress: string; /** Lookback period in seconds. */ public period: number; /** Smoothing factor in the range (0, 1]. */ public lambda: number; /** * Creates a new EwmaTask instance using the specified properties. * @param [properties] Properties to set * @returns EwmaTask instance */ public static create(properties?: oracle_job.OracleJob.IEwmaTask): oracle_job.OracleJob.EwmaTask; /** * Encodes the specified EwmaTask message. Does not implicitly {@link oracle_job.OracleJob.EwmaTask.verify|verify} messages. * @param message EwmaTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IEwmaTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified EwmaTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.EwmaTask.verify|verify} messages. * @param message EwmaTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IEwmaTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an EwmaTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns EwmaTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.EwmaTask; /** * Decodes an EwmaTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns EwmaTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.EwmaTask; /** * Verifies an EwmaTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an EwmaTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns EwmaTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.EwmaTask; /** * Creates a plain object from an EwmaTask message. Also converts values to other types if specified. * @param message EwmaTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.EwmaTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this EwmaTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for EwmaTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a ComparisonTask. */ interface IComparisonTask { /** The type of operator to use on the left (lhs) and right (rhs) operand. */ op?: (oracle_job.OracleJob.ComparisonTask.Operation|null); /** OracleJob where the executed result is equal to the left hand side operand. */ lhs?: (oracle_job.IOracleJob|null); /** String or `${CACHE_KEY}` representing the left hand side operand. */ lhsValue?: (string|null); /** OracleJob where the executed result is equal to the right hand side operand. */ rhs?: (oracle_job.IOracleJob|null); /** String or `${CACHE_KEY}` representing the right hand side operand. */ rhsValue?: (string|null); /** The OracleJob to execute if the condition evaluates to true. */ onTrue?: (oracle_job.IOracleJob|null); /** The result to use if the condition evaluates to true. Can be set to a `${CACHE_KEY}`. */ onTrueValue?: (string|null); /** The OracleJob to execute if the condition evaluates to false. */ onFalse?: (oracle_job.IOracleJob|null); /** The result to use if the condition evaluates to false. Can be set to a `${CACHE_KEY}`. */ onFalseValue?: (string|null); /** The OracleJob to execute if the condition fails to evaluate. */ onFailure?: (oracle_job.IOracleJob|null); /** The result to use if the condition fails to evaluate. Can be set to a `${CACHE_KEY}`. */ onFailureValue?: (string|null); } /** * Compare two values and return one of two results. * * _**Input**_: LHS/RHS values or jobs, plus on_true/on_false outputs. * * _**Returns**_: The value produced by `on_true` or `on_false` (or `on_failure` if evaluation fails). * * _**Example**_: Return 1 if lhs > rhs else 0 * * ```json * { * "comparisonTask": { * "op": "OPERATION_GT", * "lhsValue": "10", * "rhsValue": "5", * "onTrueValue": "1", * "onFalseValue": "0" * } * } * ``` */ class ComparisonTask implements IComparisonTask { /** * Constructs a new ComparisonTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IComparisonTask); /** The type of operator to use on the left (lhs) and right (rhs) operand. */ public op: oracle_job.OracleJob.ComparisonTask.Operation; /** OracleJob where the executed result is equal to the left hand side operand. */ public lhs?: (oracle_job.IOracleJob|null); /** String or `${CACHE_KEY}` representing the left hand side operand. */ public lhsValue?: (string|null); /** OracleJob where the executed result is equal to the right hand side operand. */ public rhs?: (oracle_job.IOracleJob|null); /** String or `${CACHE_KEY}` representing the right hand side operand. */ public rhsValue?: (string|null); /** The OracleJob to execute if the condition evaluates to true. */ public onTrue?: (oracle_job.IOracleJob|null); /** The result to use if the condition evaluates to true. Can be set to a `${CACHE_KEY}`. */ public onTrueValue: string; /** The OracleJob to execute if the condition evaluates to false. */ public onFalse?: (oracle_job.IOracleJob|null); /** The result to use if the condition evaluates to false. Can be set to a `${CACHE_KEY}`. */ public onFalseValue: string; /** The OracleJob to execute if the condition fails to evaluate. */ public onFailure?: (oracle_job.IOracleJob|null); /** The result to use if the condition fails to evaluate. Can be set to a `${CACHE_KEY}`. */ public onFailureValue: string; /** ComparisonTask LHS. */ public LHS?: ("lhs"|"lhsValue"); /** ComparisonTask RHS. */ public RHS?: ("rhs"|"rhsValue"); /** * Creates a new ComparisonTask instance using the specified properties. * @param [properties] Properties to set * @returns ComparisonTask instance */ public static create(properties?: oracle_job.OracleJob.IComparisonTask): oracle_job.OracleJob.ComparisonTask; /** * Encodes the specified ComparisonTask message. Does not implicitly {@link oracle_job.OracleJob.ComparisonTask.verify|verify} messages. * @param message ComparisonTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IComparisonTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified ComparisonTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.ComparisonTask.verify|verify} messages. * @param message ComparisonTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IComparisonTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a ComparisonTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns ComparisonTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.ComparisonTask; /** * Decodes a ComparisonTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns ComparisonTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.ComparisonTask; /** * Verifies a ComparisonTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a ComparisonTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns ComparisonTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.ComparisonTask; /** * Creates a plain object from a ComparisonTask message. Also converts values to other types if specified. * @param message ComparisonTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.ComparisonTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this ComparisonTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for ComparisonTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace ComparisonTask { /** Operation enum. */ enum Operation { OPERATION_EQ = 0, OPERATION_GT = 1, OPERATION_LT = 2 } } /** Properties of a RoundTask. */ interface IRoundTask { /** The rounding method to use. */ method?: (oracle_job.OracleJob.RoundTask.Method|null); /** The number of decimals to round to. */ decimals?: (number|null); } /** * Round the current running result to a set number of decimal places. * * _**Input**_: The current running numerical result. * * _**Returns**_: The running result rounded to a set number of decimal places. * * _**Example**_: Round down the running resul to 8 decimal places * * ```json * { "roundTask": { "method": "METHOD_ROUND_DOWN", "decimals": 8 } } * ``` */ class RoundTask implements IRoundTask { /** * Constructs a new RoundTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IRoundTask); /** The rounding method to use. */ public method: oracle_job.OracleJob.RoundTask.Method; /** The number of decimals to round to. */ public decimals: number; /** * Creates a new RoundTask instance using the specified properties. * @param [properties] Properties to set * @returns RoundTask instance */ public static create(properties?: oracle_job.OracleJob.IRoundTask): oracle_job.OracleJob.RoundTask; /** * Encodes the specified RoundTask message. Does not implicitly {@link oracle_job.OracleJob.RoundTask.verify|verify} messages. * @param message RoundTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IRoundTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified RoundTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.RoundTask.verify|verify} messages. * @param message RoundTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IRoundTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a RoundTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns RoundTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.RoundTask; /** * Decodes a RoundTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns RoundTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.RoundTask; /** * Verifies a RoundTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a RoundTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns RoundTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.RoundTask; /** * Creates a plain object from a RoundTask message. Also converts values to other types if specified. * @param message RoundTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.RoundTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this RoundTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for RoundTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace RoundTask { /** Method enum. */ enum Method { METHOD_ROUND_UP = 0, METHOD_ROUND_DOWN = 1 } } /** Properties of a BoundTask. */ interface IBoundTask { /** The OracleJob to execute for the lower bound value. */ lowerBound?: (oracle_job.IOracleJob|null); /** The value to use for the lower bound. Can be set to a `${CACHE_KEY}`. */ lowerBoundValue?: (string|null); /** The OracleJob to execute for the upper bound value. */ upperBound?: (oracle_job.IOracleJob|null); /** The value to use for the upper bound. Can be set to a `${CACHE_KEY}`. */ upperBoundValue?: (string|null); /** The OracleJob to execute if the upper bound is exceeded. */ onExceedsUpperBound?: (oracle_job.IOracleJob|null); /** The value to use if the upper bound is exceeded. Can be set to a `${CACHE_KEY}`. */ onExceedsUpperBoundValue?: (string|null); /** The OracleJob to execute if the lower bound is exceeded. */ onExceedsLowerBound?: (oracle_job.IOracleJob|null); /** The value to use if the lower bound is exceeded. Can be set to a `${CACHE_KEY}`. */ onExceedsLowerBoundValue?: (string|null); } /** * Bound the running result to an upper/lower bound. This is typically the last task in an OracleJob. * * _**Input**_: The current running numerical result. * * _**Returns**_: The running result bounded to an upper or lower bound if it exceeds a given threshold. * * _**Example**_: Bound the running result to a value between 0.90 and 1.10 * * ```json * { "boundTask": { "lowerBoundValue": "0.90","onExceedsLowerBoundValue": "0.90","upperBoundValue": "1.10","onExceedsUpperBoundValue": "1.10" } } * ``` */ class BoundTask implements IBoundTask { /** * Constructs a new BoundTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IBoundTask); /** The OracleJob to execute for the lower bound value. */ public lowerBound?: (oracle_job.IOracleJob|null); /** The value to use for the lower bound. Can be set to a `${CACHE_KEY}`. */ public lowerBoundValue: string; /** The OracleJob to execute for the upper bound value. */ public upperBound?: (oracle_job.IOracleJob|null); /** The value to use for the upper bound. Can be set to a `${CACHE_KEY}`. */ public upperBoundValue: string; /** The OracleJob to execute if the upper bound is exceeded. */ public onExceedsUpperBound?: (oracle_job.IOracleJob|null); /** The value to use if the upper bound is exceeded. Can be set to a `${CACHE_KEY}`. */ public onExceedsUpperBoundValue: string; /** The OracleJob to execute if the lower bound is exceeded. */ public onExceedsLowerBound?: (oracle_job.IOracleJob|null); /** The value to use if the lower bound is exceeded. Can be set to a `${CACHE_KEY}`. */ public onExceedsLowerBoundValue: string; /** * Creates a new BoundTask instance using the specified properties. * @param [properties] Properties to set * @returns BoundTask instance */ public static create(properties?: oracle_job.OracleJob.IBoundTask): oracle_job.OracleJob.BoundTask; /** * Encodes the specified BoundTask message. Does not implicitly {@link oracle_job.OracleJob.BoundTask.verify|verify} messages. * @param message BoundTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IBoundTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified BoundTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.BoundTask.verify|verify} messages. * @param message BoundTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IBoundTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a BoundTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns BoundTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.BoundTask; /** * Decodes a BoundTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns BoundTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.BoundTask; /** * Verifies a BoundTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a BoundTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns BoundTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.BoundTask; /** * Creates a plain object from a BoundTask message. Also converts values to other types if specified. * @param message BoundTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.BoundTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this BoundTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for BoundTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SecretsTask. */ interface ISecretsTask { /** The authority of the secrets that are to be requested. */ authority?: (string|null); /** Legacy server URL override for historical or self-hosted deployments. The old hosted default at https://api.secrets.switchboard.xyz is no longer available. */ url?: (string|null); } /** * Deprecated compatibility task for the legacy Switchboard secrets-server flow. * * `SecretsTask` is no longer officially supported. The hosted secrets service has been taken down, and new integrations should use `variableOverrides` to inject API keys and other authentication credentials at request time. * * See the Data Feed Variable Overrides guide for the supported pattern. * * _**Input**_: None * * _**Returns**_: The input * * _**Example**_: Legacy `SecretsTask` * * ```json * { "secretsTask": { "authority": "Accb21tUCWocJea6Uk3DgrNZawgmKegDVeHw8cGMDPi5" } } * ``` */ class SecretsTask implements ISecretsTask { /** * Constructs a new SecretsTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISecretsTask); /** The authority of the secrets that are to be requested. */ public authority: string; /** Legacy server URL override for historical or self-hosted deployments. The old hosted default at https://api.secrets.switchboard.xyz is no longer available. */ public url: string; /** * Creates a new SecretsTask instance using the specified properties. * @param [properties] Properties to set * @returns SecretsTask instance */ public static create(properties?: oracle_job.OracleJob.ISecretsTask): oracle_job.OracleJob.SecretsTask; /** * Encodes the specified SecretsTask message. Does not implicitly {@link oracle_job.OracleJob.SecretsTask.verify|verify} messages. * @param message SecretsTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISecretsTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SecretsTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SecretsTask.verify|verify} messages. * @param message SecretsTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISecretsTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SecretsTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SecretsTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SecretsTask; /** * Decodes a SecretsTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SecretsTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SecretsTask; /** * Verifies a SecretsTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SecretsTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SecretsTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SecretsTask; /** * Creates a plain object from a SecretsTask message. Also converts values to other types if specified. * @param message SecretsTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SecretsTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SecretsTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SecretsTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SanctumLstPriceTask. */ interface ISanctumLstPriceTask { /** * The address of the LST mint. * * e.g. INF - 5oVNBeEEQvYi1cX3ir8Dx5n1P7pdxydbGF2X4TxVusJm */ lstMint?: (string|null); /** Allow the check to see if the LST was cranked for the current epoch to be skipped. */ skipEpochCheck?: (boolean|null); } /** Grab the price of an Sanctum LST relative to SOL. */ class SanctumLstPriceTask implements ISanctumLstPriceTask { /** * Constructs a new SanctumLstPriceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISanctumLstPriceTask); /** * The address of the LST mint. * * e.g. INF - 5oVNBeEEQvYi1cX3ir8Dx5n1P7pdxydbGF2X4TxVusJm */ public lstMint: string; /** Allow the check to see if the LST was cranked for the current epoch to be skipped. */ public skipEpochCheck: boolean; /** * Creates a new SanctumLstPriceTask instance using the specified properties. * @param [properties] Properties to set * @returns SanctumLstPriceTask instance */ public static create(properties?: oracle_job.OracleJob.ISanctumLstPriceTask): oracle_job.OracleJob.SanctumLstPriceTask; /** * Encodes the specified SanctumLstPriceTask message. Does not implicitly {@link oracle_job.OracleJob.SanctumLstPriceTask.verify|verify} messages. * @param message SanctumLstPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISanctumLstPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SanctumLstPriceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SanctumLstPriceTask.verify|verify} messages. * @param message SanctumLstPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISanctumLstPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SanctumLstPriceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SanctumLstPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SanctumLstPriceTask; /** * Decodes a SanctumLstPriceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SanctumLstPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SanctumLstPriceTask; /** * Verifies a SanctumLstPriceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SanctumLstPriceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SanctumLstPriceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SanctumLstPriceTask; /** * Creates a plain object from a SanctumLstPriceTask message. Also converts values to other types if specified. * @param message SanctumLstPriceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SanctumLstPriceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SanctumLstPriceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SanctumLstPriceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a VsuiPriceTask. */ interface IVsuiPriceTask { /** * Optional Sui RPC endpoint override for fetching on-chain data. * If omitted or empty, the oracle operator must configure SUI_MAINNET_RPC. */ rpcUrl?: (string|null); } /** * Get the vSUI/SUI exchange rate on Sui mainnet. * No inputs required - uses hardcoded vSUI pool addresses. */ class VsuiPriceTask implements IVsuiPriceTask { /** * Constructs a new VsuiPriceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IVsuiPriceTask); /** * Optional Sui RPC endpoint override for fetching on-chain data. * If omitted or empty, the oracle operator must configure SUI_MAINNET_RPC. */ public rpcUrl: string; /** * Creates a new VsuiPriceTask instance using the specified properties. * @param [properties] Properties to set * @returns VsuiPriceTask instance */ public static create(properties?: oracle_job.OracleJob.IVsuiPriceTask): oracle_job.OracleJob.VsuiPriceTask; /** * Encodes the specified VsuiPriceTask message. Does not implicitly {@link oracle_job.OracleJob.VsuiPriceTask.verify|verify} messages. * @param message VsuiPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IVsuiPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified VsuiPriceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.VsuiPriceTask.verify|verify} messages. * @param message VsuiPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IVsuiPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a VsuiPriceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns VsuiPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.VsuiPriceTask; /** * Decodes a VsuiPriceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns VsuiPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.VsuiPriceTask; /** * Verifies a VsuiPriceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a VsuiPriceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns VsuiPriceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.VsuiPriceTask; /** * Creates a plain object from a VsuiPriceTask message. Also converts values to other types if specified. * @param message VsuiPriceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.VsuiPriceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this VsuiPriceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for VsuiPriceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SuiLstPriceTask. */ interface ISuiLstPriceTask { /** The package ID containing the exchange rate function. */ packageId?: (string|null); /** The module name containing the exchange rate function. */ module?: (string|null); /** The function name to call (e.g., "get_sui_by_stsui", "from_shares", "get_exchange_rate"). */ "function"?: (string|null); /** * List of shared object IDs to pass as arguments (in order). * These will be resolved to SharedObject arguments with their initial_shared_version. */ sharedObjects?: (string[]|null); /** * If true, appends the LST amount (1e9 = 1 token) as a Pure u64 argument after shared objects. * Set to true for functions like "get_sui_by_stsui(staking, amount)" or "from_shares(pool, meta, amount)". * Set to false for functions like "get_exchange_rate(staking)" that return the rate directly. */ provideLstAmount?: (boolean|null); /** * Optional Sui RPC endpoint override for fetching on-chain data. * If omitted or empty, the oracle operator must configure SUI_MAINNET_RPC. */ rpcUrl?: (string|null); } /** * Get the exchange rate for Sui Liquid Staking Tokens (LSTs) relative to SUI. * * All configuration is passed as parameters, allowing support for any LST without code changes. * * _**Input**_: None * * _**Returns**_: The exchange rate (e.g., 1.068 means 1 LST = 1.068 SUI) * * _**Example**_: haSUI (simple - 1 shared object): * * ```json * { * "suiLstPriceTask": { * "packageId": "0xbde4ba4c2e274a60ce15c1cfff9e5c42e41654ac8b6d906a57efa4bd3c29f47d", * "module": "staking", * "function": "get_sui_by_stsui", * "sharedObjects": ["0x47b224762220393057ebf4f70501b6e657c3e56684737568439a04f80849b2ca"], * "provideLstAmount": true * } * } * ``` * * _**Example**_: vSUI (2 shared objects - StakePool + Metadata): * * ```json * { * "suiLstPriceTask": { * "packageId": "0x68d22cf8bdbcd11ecba1e094922873e4080d4d11133e2443fddda0bfd11dae20", * "module": "stake_pool", * "function": "lst_amount_to_sui_amount", * "sharedObjects": [ * "0x2d914e23d82fedef1b5f56a32d5c64bdcc3087ccfea2b4d6ea51a71f587840e5", * "0x680cd26af32b2bde8d3361e804c53ec1d1cfe24c7f039eb7f549e8dfde389a60" * ], * "provideLstAmount": true * } * } * ``` */ class SuiLstPriceTask implements ISuiLstPriceTask { /** * Constructs a new SuiLstPriceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISuiLstPriceTask); /** The package ID containing the exchange rate function. */ public packageId: string; /** The module name containing the exchange rate function. */ public module: string; /** The function name to call (e.g., "get_sui_by_stsui", "from_shares", "get_exchange_rate"). */ public function: string; /** * List of shared object IDs to pass as arguments (in order). * These will be resolved to SharedObject arguments with their initial_shared_version. */ public sharedObjects: string[]; /** * If true, appends the LST amount (1e9 = 1 token) as a Pure u64 argument after shared objects. * Set to true for functions like "get_sui_by_stsui(staking, amount)" or "from_shares(pool, meta, amount)". * Set to false for functions like "get_exchange_rate(staking)" that return the rate directly. */ public provideLstAmount: boolean; /** * Optional Sui RPC endpoint override for fetching on-chain data. * If omitted or empty, the oracle operator must configure SUI_MAINNET_RPC. */ public rpcUrl: string; /** * Creates a new SuiLstPriceTask instance using the specified properties. * @param [properties] Properties to set * @returns SuiLstPriceTask instance */ public static create(properties?: oracle_job.OracleJob.ISuiLstPriceTask): oracle_job.OracleJob.SuiLstPriceTask; /** * Encodes the specified SuiLstPriceTask message. Does not implicitly {@link oracle_job.OracleJob.SuiLstPriceTask.verify|verify} messages. * @param message SuiLstPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISuiLstPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SuiLstPriceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SuiLstPriceTask.verify|verify} messages. * @param message SuiLstPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISuiLstPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SuiLstPriceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SuiLstPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SuiLstPriceTask; /** * Decodes a SuiLstPriceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SuiLstPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SuiLstPriceTask; /** * Verifies a SuiLstPriceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SuiLstPriceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SuiLstPriceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SuiLstPriceTask; /** * Creates a plain object from a SuiLstPriceTask message. Also converts values to other types if specified. * @param message SuiLstPriceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SuiLstPriceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SuiLstPriceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SuiLstPriceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an OndoUsdyTask. */ interface IOndoUsdyTask { /** The strategy used to determine the price of USDY. */ strategy?: (oracle_job.OracleJob.OndoUsdyTask.Strategy|null); } /** * OndoUsdyTask represents a task that computes the price of USDY relative to USD using a * specified strategy. */ class OndoUsdyTask implements IOndoUsdyTask { /** * Constructs a new OndoUsdyTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IOndoUsdyTask); /** The strategy used to determine the price of USDY. */ public strategy: oracle_job.OracleJob.OndoUsdyTask.Strategy; /** * Creates a new OndoUsdyTask instance using the specified properties. * @param [properties] Properties to set * @returns OndoUsdyTask instance */ public static create(properties?: oracle_job.OracleJob.IOndoUsdyTask): oracle_job.OracleJob.OndoUsdyTask; /** * Encodes the specified OndoUsdyTask message. Does not implicitly {@link oracle_job.OracleJob.OndoUsdyTask.verify|verify} messages. * @param message OndoUsdyTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IOndoUsdyTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified OndoUsdyTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.OndoUsdyTask.verify|verify} messages. * @param message OndoUsdyTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IOndoUsdyTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an OndoUsdyTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns OndoUsdyTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.OndoUsdyTask; /** * Decodes an OndoUsdyTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns OndoUsdyTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.OndoUsdyTask; /** * Verifies an OndoUsdyTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an OndoUsdyTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns OndoUsdyTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.OndoUsdyTask; /** * Creates a plain object from an OndoUsdyTask message. Also converts values to other types if specified. * @param message OndoUsdyTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.OndoUsdyTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this OndoUsdyTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for OndoUsdyTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace OndoUsdyTask { /** * Strategy specifies the method used to determine the price of USDY. * * - STRATEGY_FAIR_VALUE: Computes the price based on a fair value model. * - STRATEGY_MARKET: Fetches the price directly from the market. */ enum Strategy { STRATEGY_FAIR_VALUE = 0, STRATEGY_MARKET = 1 } } /** Properties of a KalshiApiTask. */ interface IKalshiApiTask { /** A string containing the URL to direct this HTTP request to. */ url?: (string|null); /** A string containing the API Key ID */ apiKeyId?: (string|null); /** A string containing the private key for authentication */ privateKey?: (string|null); /** Optional signature string field */ signature?: (string|null); /** Optional timestamp in milliseconds (used with signature) */ timestamp?: (string|null); } /** KalshiApiTask fetches a GET endpoint from the Kalshi API (with a token if supplied) and returns the JSON result */ class KalshiApiTask implements IKalshiApiTask { /** * Constructs a new KalshiApiTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IKalshiApiTask); /** A string containing the URL to direct this HTTP request to. */ public url: string; /** A string containing the API Key ID */ public apiKeyId: string; /** A string containing the private key for authentication */ public privateKey: string; /** Optional signature string field */ public signature: string; /** Optional timestamp in milliseconds (used with signature) */ public timestamp: string; /** * Creates a new KalshiApiTask instance using the specified properties. * @param [properties] Properties to set * @returns KalshiApiTask instance */ public static create(properties?: oracle_job.OracleJob.IKalshiApiTask): oracle_job.OracleJob.KalshiApiTask; /** * Encodes the specified KalshiApiTask message. Does not implicitly {@link oracle_job.OracleJob.KalshiApiTask.verify|verify} messages. * @param message KalshiApiTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IKalshiApiTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified KalshiApiTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.KalshiApiTask.verify|verify} messages. * @param message KalshiApiTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IKalshiApiTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a KalshiApiTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns KalshiApiTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.KalshiApiTask; /** * Decodes a KalshiApiTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns KalshiApiTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.KalshiApiTask; /** * Verifies a KalshiApiTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a KalshiApiTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns KalshiApiTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.KalshiApiTask; /** * Creates a plain object from a KalshiApiTask message. Also converts values to other types if specified. * @param message KalshiApiTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.KalshiApiTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this KalshiApiTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for KalshiApiTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MeteoraSwapTask. */ interface IMeteoraSwapTask { /** The address of the pool. */ pool?: (string|null); /** The pool type. */ type?: (oracle_job.OracleJob.MeteoraSwapTask.Type|null); } /** Grab the swap price from a Meteora pool. */ class MeteoraSwapTask implements IMeteoraSwapTask { /** * Constructs a new MeteoraSwapTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMeteoraSwapTask); /** The address of the pool. */ public pool: string; /** The pool type. */ public type: oracle_job.OracleJob.MeteoraSwapTask.Type; /** * Creates a new MeteoraSwapTask instance using the specified properties. * @param [properties] Properties to set * @returns MeteoraSwapTask instance */ public static create(properties?: oracle_job.OracleJob.IMeteoraSwapTask): oracle_job.OracleJob.MeteoraSwapTask; /** * Encodes the specified MeteoraSwapTask message. Does not implicitly {@link oracle_job.OracleJob.MeteoraSwapTask.verify|verify} messages. * @param message MeteoraSwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMeteoraSwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MeteoraSwapTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MeteoraSwapTask.verify|verify} messages. * @param message MeteoraSwapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMeteoraSwapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MeteoraSwapTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MeteoraSwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MeteoraSwapTask; /** * Decodes a MeteoraSwapTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MeteoraSwapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MeteoraSwapTask; /** * Verifies a MeteoraSwapTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MeteoraSwapTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MeteoraSwapTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MeteoraSwapTask; /** * Creates a plain object from a MeteoraSwapTask message. Also converts values to other types if specified. * @param message MeteoraSwapTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MeteoraSwapTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MeteoraSwapTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MeteoraSwapTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace MeteoraSwapTask { /** Type enum. */ enum Type { TYPE_DLMM = 0, TYPE_STANDARD = 1 } } /** Properties of an UnixTimeTask. */ interface IUnixTimeTask { /** The offset to subtract from the current time. */ offset?: (number|null); } /** Get current time in seconds since Unix epoch. */ class UnixTimeTask implements IUnixTimeTask { /** * Constructs a new UnixTimeTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IUnixTimeTask); /** The offset to subtract from the current time. */ public offset: number; /** * Creates a new UnixTimeTask instance using the specified properties. * @param [properties] Properties to set * @returns UnixTimeTask instance */ public static create(properties?: oracle_job.OracleJob.IUnixTimeTask): oracle_job.OracleJob.UnixTimeTask; /** * Encodes the specified UnixTimeTask message. Does not implicitly {@link oracle_job.OracleJob.UnixTimeTask.verify|verify} messages. * @param message UnixTimeTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IUnixTimeTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified UnixTimeTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.UnixTimeTask.verify|verify} messages. * @param message UnixTimeTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IUnixTimeTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an UnixTimeTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns UnixTimeTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.UnixTimeTask; /** * Decodes an UnixTimeTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns UnixTimeTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.UnixTimeTask; /** * Verifies an UnixTimeTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an UnixTimeTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns UnixTimeTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.UnixTimeTask; /** * Creates a plain object from an UnixTimeTask message. Also converts values to other types if specified. * @param message UnixTimeTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.UnixTimeTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this UnixTimeTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for UnixTimeTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a MapleFinanceTask. */ interface IMapleFinanceTask { /** The specific method to use for this task. */ method?: (oracle_job.OracleJob.MapleFinanceTask.Method|null); } /** * Fetch pricing information for Maple Finance assets. * * _**Input**_: None * * _**Returns**_: The requested price or value based on the specified method. * * _**Example**_: Fetch the syrupUSDC fair price from Maple Finance * * ```json * { "mapleFinanceTask": { "method": "METHOD_SYRUP_USDC_FAIR_PRICE" } } * ``` */ class MapleFinanceTask implements IMapleFinanceTask { /** * Constructs a new MapleFinanceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IMapleFinanceTask); /** The specific method to use for this task. */ public method: oracle_job.OracleJob.MapleFinanceTask.Method; /** * Creates a new MapleFinanceTask instance using the specified properties. * @param [properties] Properties to set * @returns MapleFinanceTask instance */ public static create(properties?: oracle_job.OracleJob.IMapleFinanceTask): oracle_job.OracleJob.MapleFinanceTask; /** * Encodes the specified MapleFinanceTask message. Does not implicitly {@link oracle_job.OracleJob.MapleFinanceTask.verify|verify} messages. * @param message MapleFinanceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IMapleFinanceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified MapleFinanceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.MapleFinanceTask.verify|verify} messages. * @param message MapleFinanceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IMapleFinanceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a MapleFinanceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns MapleFinanceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.MapleFinanceTask; /** * Decodes a MapleFinanceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns MapleFinanceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.MapleFinanceTask; /** * Verifies a MapleFinanceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a MapleFinanceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns MapleFinanceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.MapleFinanceTask; /** * Creates a plain object from a MapleFinanceTask message. Also converts values to other types if specified. * @param message MapleFinanceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.MapleFinanceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this MapleFinanceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for MapleFinanceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace MapleFinanceTask { /** Specifies the method to use for fetching Maple Finance data. */ enum Method { METHOD_SYRUP_USDC_FAIR_PRICE = 0 } } /** Properties of a GlyphTask. */ interface IGlyphTask { /** The Algebra pool address on Core. */ poolAddress?: (string|null); /** True for token0 -> token1 price, false for token1 -> token0. */ zeroForOne?: (boolean|null); } /** * Fetch the spot price from a Glyph (Algebra) pool on Core. * * _**Input**_: Pool address and swap direction. * * _**Returns**_: The pool price in the requested direction. * * _**Example**_: Token0 -> Token1 price * * ```json * { "glyphTask": { "poolAddress": "0xPOOL_ADDRESS", "zeroForOne": true } } * ``` */ class GlyphTask implements IGlyphTask { /** * Constructs a new GlyphTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IGlyphTask); /** The Algebra pool address on Core. */ public poolAddress: string; /** True for token0 -> token1 price, false for token1 -> token0. */ public zeroForOne: boolean; /** * Creates a new GlyphTask instance using the specified properties. * @param [properties] Properties to set * @returns GlyphTask instance */ public static create(properties?: oracle_job.OracleJob.IGlyphTask): oracle_job.OracleJob.GlyphTask; /** * Encodes the specified GlyphTask message. Does not implicitly {@link oracle_job.OracleJob.GlyphTask.verify|verify} messages. * @param message GlyphTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IGlyphTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified GlyphTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.GlyphTask.verify|verify} messages. * @param message GlyphTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IGlyphTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a GlyphTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns GlyphTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.GlyphTask; /** * Decodes a GlyphTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns GlyphTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.GlyphTask; /** * Verifies a GlyphTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a GlyphTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns GlyphTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.GlyphTask; /** * Creates a plain object from a GlyphTask message. Also converts values to other types if specified. * @param message GlyphTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.GlyphTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this GlyphTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for GlyphTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CorexTask. */ interface ICorexTask { /** The input token address. */ inToken?: (string|null); /** The output token address. */ outToken?: (string|null); /** The allowable slippage in percent for the swap quote. */ slippage?: (number|null); } /** * Fetch a swap quote from CoreX (Core chain) using Uniswap V3 pricing. * * _**Input**_: Input token address, output token address, and slippage. * * _**Returns**_: The quoted swap price for the requested pair. * * _**Example**_: Quote STCORE -> WCORE * * ```json * { "corexTask": { "inToken": "0xIN_TOKEN", "outToken": "0xOUT_TOKEN", "slippage": 0.01 } } * ``` */ class CorexTask implements ICorexTask { /** * Constructs a new CorexTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ICorexTask); /** The input token address. */ public inToken: string; /** The output token address. */ public outToken: string; /** The allowable slippage in percent for the swap quote. */ public slippage: number; /** * Creates a new CorexTask instance using the specified properties. * @param [properties] Properties to set * @returns CorexTask instance */ public static create(properties?: oracle_job.OracleJob.ICorexTask): oracle_job.OracleJob.CorexTask; /** * Encodes the specified CorexTask message. Does not implicitly {@link oracle_job.OracleJob.CorexTask.verify|verify} messages. * @param message CorexTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ICorexTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified CorexTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.CorexTask.verify|verify} messages. * @param message CorexTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ICorexTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a CorexTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns CorexTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.CorexTask; /** * Decodes a CorexTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns CorexTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.CorexTask; /** * Verifies a CorexTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a CorexTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns CorexTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.CorexTask; /** * Creates a plain object from a CorexTask message. Also converts values to other types if specified. * @param message CorexTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.CorexTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this CorexTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for CorexTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an AftermathTask. */ interface IAftermathTask { /** The Aftermath pool object ID. */ poolAddress?: (string|null); /** The input amount to quote. */ inAmount?: (number|null); /** The full Sui coin type for the input token. */ inCoinType?: (string|null); /** The full Sui coin type for the output token. */ outCoinType?: (string|null); } /** * Fetch a spot swap quote from an Aftermath pool on Sui. * * _**Input**_: Pool address, input amount, and coin types for the swap. * * _**Returns**_: The estimated output amount for the given input. * * _**Example**_: Quote a swap in an Aftermath pool * * ```json * { * "aftermathTask": { * "poolAddress": "0xPOOL_OBJECT_ID", * "inAmount": 1.0, * "inCoinType": "0x2::sui::SUI", * "outCoinType": "0x...::coin::COIN" * } * } * ``` */ class AftermathTask implements IAftermathTask { /** * Constructs a new AftermathTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IAftermathTask); /** The Aftermath pool object ID. */ public poolAddress: string; /** The input amount to quote. */ public inAmount: number; /** The full Sui coin type for the input token. */ public inCoinType: string; /** The full Sui coin type for the output token. */ public outCoinType: string; /** * Creates a new AftermathTask instance using the specified properties. * @param [properties] Properties to set * @returns AftermathTask instance */ public static create(properties?: oracle_job.OracleJob.IAftermathTask): oracle_job.OracleJob.AftermathTask; /** * Encodes the specified AftermathTask message. Does not implicitly {@link oracle_job.OracleJob.AftermathTask.verify|verify} messages. * @param message AftermathTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IAftermathTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified AftermathTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.AftermathTask.verify|verify} messages. * @param message AftermathTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IAftermathTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an AftermathTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns AftermathTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.AftermathTask; /** * Decodes an AftermathTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns AftermathTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.AftermathTask; /** * Verifies an AftermathTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an AftermathTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns AftermathTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.AftermathTask; /** * Creates a plain object from an AftermathTask message. Also converts values to other types if specified. * @param message AftermathTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.AftermathTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this AftermathTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for AftermathTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a LlmTask. */ interface ILlmTask { /** LlmTask openai */ openai?: (oracle_job.OracleJob.LlmTask.IOpenAIConfig|null); /** LlmTask groq */ groq?: (oracle_job.OracleJob.LlmTask.IGroqConfig|null); /** LlmTask grokxai */ grokxai?: (oracle_job.OracleJob.LlmTask.IGrokXAIConfig|null); } /** * Interacts with a Large Language Model (LLM) to generate a text response based on a user-provided prompt. * * _**Input**_: None * * _**Returns**_: Text generated by the LLM based on the provided prompt and configuration. * * _**Example**_: Using OpenAI's GPT-4 model to generate a joke. * * ```json * { * "llmTask": { * "providerConfig": { * "openai": { * "model": "gpt-4", * "userPrompt": "Tell me a joke.", * "temperature": 0.7, * "secretNameApiKey": "${OPENAI_API_KEY}" * } * } * } * } */ class LlmTask implements ILlmTask { /** * Constructs a new LlmTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ILlmTask); /** LlmTask openai. */ public openai?: (oracle_job.OracleJob.LlmTask.IOpenAIConfig|null); /** LlmTask groq. */ public groq?: (oracle_job.OracleJob.LlmTask.IGroqConfig|null); /** LlmTask grokxai. */ public grokxai?: (oracle_job.OracleJob.LlmTask.IGrokXAIConfig|null); /** LlmTask providerConfig. */ public providerConfig?: ("openai"|"groq"|"grokxai"); /** * Creates a new LlmTask instance using the specified properties. * @param [properties] Properties to set * @returns LlmTask instance */ public static create(properties?: oracle_job.OracleJob.ILlmTask): oracle_job.OracleJob.LlmTask; /** * Encodes the specified LlmTask message. Does not implicitly {@link oracle_job.OracleJob.LlmTask.verify|verify} messages. * @param message LlmTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ILlmTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified LlmTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.LlmTask.verify|verify} messages. * @param message LlmTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ILlmTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a LlmTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns LlmTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.LlmTask; /** * Decodes a LlmTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns LlmTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.LlmTask; /** * Verifies a LlmTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a LlmTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns LlmTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.LlmTask; /** * Creates a plain object from a LlmTask message. Also converts values to other types if specified. * @param message LlmTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.LlmTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this LlmTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for LlmTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace LlmTask { /** Properties of an OpenAIConfig. */ interface IOpenAIConfig { /** OpenAIConfig model */ model?: (string|null); /** OpenAIConfig userPrompt */ userPrompt?: (string|null); /** OpenAIConfig temperature */ temperature?: (number|null); /** OpenAIConfig secretNameApiKey */ secretNameApiKey?: (string|null); } /** Represents an OpenAIConfig. */ class OpenAIConfig implements IOpenAIConfig { /** * Constructs a new OpenAIConfig. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.LlmTask.IOpenAIConfig); /** OpenAIConfig model. */ public model: string; /** OpenAIConfig userPrompt. */ public userPrompt: string; /** OpenAIConfig temperature. */ public temperature: number; /** OpenAIConfig secretNameApiKey. */ public secretNameApiKey: string; /** * Creates a new OpenAIConfig instance using the specified properties. * @param [properties] Properties to set * @returns OpenAIConfig instance */ public static create(properties?: oracle_job.OracleJob.LlmTask.IOpenAIConfig): oracle_job.OracleJob.LlmTask.OpenAIConfig; /** * Encodes the specified OpenAIConfig message. Does not implicitly {@link oracle_job.OracleJob.LlmTask.OpenAIConfig.verify|verify} messages. * @param message OpenAIConfig message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.LlmTask.IOpenAIConfig, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified OpenAIConfig message, length delimited. Does not implicitly {@link oracle_job.OracleJob.LlmTask.OpenAIConfig.verify|verify} messages. * @param message OpenAIConfig message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.LlmTask.IOpenAIConfig, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an OpenAIConfig message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns OpenAIConfig * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.LlmTask.OpenAIConfig; /** * Decodes an OpenAIConfig message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns OpenAIConfig * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.LlmTask.OpenAIConfig; /** * Verifies an OpenAIConfig message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an OpenAIConfig message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns OpenAIConfig */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.LlmTask.OpenAIConfig; /** * Creates a plain object from an OpenAIConfig message. Also converts values to other types if specified. * @param message OpenAIConfig * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.LlmTask.OpenAIConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this OpenAIConfig to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for OpenAIConfig * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GroqConfig. */ interface IGroqConfig { /** GroqConfig model */ model?: (string|null); /** GroqConfig userPrompt */ userPrompt?: (string|null); /** GroqConfig temperature */ temperature?: (number|null); /** GroqConfig secretNameApiKey */ secretNameApiKey?: (string|null); } /** Represents a GroqConfig. */ class GroqConfig implements IGroqConfig { /** * Constructs a new GroqConfig. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.LlmTask.IGroqConfig); /** GroqConfig model. */ public model: string; /** GroqConfig userPrompt. */ public userPrompt: string; /** GroqConfig temperature. */ public temperature: number; /** GroqConfig secretNameApiKey. */ public secretNameApiKey: string; /** * Creates a new GroqConfig instance using the specified properties. * @param [properties] Properties to set * @returns GroqConfig instance */ public static create(properties?: oracle_job.OracleJob.LlmTask.IGroqConfig): oracle_job.OracleJob.LlmTask.GroqConfig; /** * Encodes the specified GroqConfig message. Does not implicitly {@link oracle_job.OracleJob.LlmTask.GroqConfig.verify|verify} messages. * @param message GroqConfig message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.LlmTask.IGroqConfig, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified GroqConfig message, length delimited. Does not implicitly {@link oracle_job.OracleJob.LlmTask.GroqConfig.verify|verify} messages. * @param message GroqConfig message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.LlmTask.IGroqConfig, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a GroqConfig message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns GroqConfig * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.LlmTask.GroqConfig; /** * Decodes a GroqConfig message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns GroqConfig * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.LlmTask.GroqConfig; /** * Verifies a GroqConfig message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a GroqConfig message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns GroqConfig */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.LlmTask.GroqConfig; /** * Creates a plain object from a GroqConfig message. Also converts values to other types if specified. * @param message GroqConfig * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.LlmTask.GroqConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this GroqConfig to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for GroqConfig * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a GrokXAIConfig. */ interface IGrokXAIConfig { /** GrokXAIConfig model */ model?: (string|null); /** GrokXAIConfig userPrompt */ userPrompt?: (string|null); /** GrokXAIConfig temperature */ temperature?: (number|null); /** GrokXAIConfig secretNameApiKey */ secretNameApiKey?: (string|null); } /** Represents a GrokXAIConfig. */ class GrokXAIConfig implements IGrokXAIConfig { /** * Constructs a new GrokXAIConfig. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.LlmTask.IGrokXAIConfig); /** GrokXAIConfig model. */ public model: string; /** GrokXAIConfig userPrompt. */ public userPrompt: string; /** GrokXAIConfig temperature. */ public temperature: number; /** GrokXAIConfig secretNameApiKey. */ public secretNameApiKey: string; /** * Creates a new GrokXAIConfig instance using the specified properties. * @param [properties] Properties to set * @returns GrokXAIConfig instance */ public static create(properties?: oracle_job.OracleJob.LlmTask.IGrokXAIConfig): oracle_job.OracleJob.LlmTask.GrokXAIConfig; /** * Encodes the specified GrokXAIConfig message. Does not implicitly {@link oracle_job.OracleJob.LlmTask.GrokXAIConfig.verify|verify} messages. * @param message GrokXAIConfig message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.LlmTask.IGrokXAIConfig, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified GrokXAIConfig message, length delimited. Does not implicitly {@link oracle_job.OracleJob.LlmTask.GrokXAIConfig.verify|verify} messages. * @param message GrokXAIConfig message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.LlmTask.IGrokXAIConfig, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a GrokXAIConfig message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns GrokXAIConfig * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.LlmTask.GrokXAIConfig; /** * Decodes a GrokXAIConfig message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns GrokXAIConfig * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.LlmTask.GrokXAIConfig; /** * Verifies a GrokXAIConfig message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a GrokXAIConfig message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns GrokXAIConfig */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.LlmTask.GrokXAIConfig; /** * Creates a plain object from a GrokXAIConfig message. Also converts values to other types if specified. * @param message GrokXAIConfig * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.LlmTask.GrokXAIConfig, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this GrokXAIConfig to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for GrokXAIConfig * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } } /** Properties of a SolayerSusdTask. */ interface ISolayerSusdTask { } /** * Fetch the current price of Solayer's sUSD stablecoin by reading its interest-bearing mint configuration. * * _**Input**_: None * * _**Returns**_: The current price of sUSD relative to USD (1.0 = $1.00) * * _**Example**_: Fetch the current sUSD price * * ```json * { "solayerSusdTask": {} } * ``` */ class SolayerSusdTask implements ISolayerSusdTask { /** * Constructs a new SolayerSusdTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISolayerSusdTask); /** * Creates a new SolayerSusdTask instance using the specified properties. * @param [properties] Properties to set * @returns SolayerSusdTask instance */ public static create(properties?: oracle_job.OracleJob.ISolayerSusdTask): oracle_job.OracleJob.SolayerSusdTask; /** * Encodes the specified SolayerSusdTask message. Does not implicitly {@link oracle_job.OracleJob.SolayerSusdTask.verify|verify} messages. * @param message SolayerSusdTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISolayerSusdTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SolayerSusdTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SolayerSusdTask.verify|verify} messages. * @param message SolayerSusdTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISolayerSusdTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SolayerSusdTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SolayerSusdTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SolayerSusdTask; /** * Decodes a SolayerSusdTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SolayerSusdTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SolayerSusdTask; /** * Verifies a SolayerSusdTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SolayerSusdTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SolayerSusdTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SolayerSusdTask; /** * Creates a plain object from a SolayerSusdTask message. Also converts values to other types if specified. * @param message SolayerSusdTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SolayerSusdTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SolayerSusdTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SolayerSusdTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a CurveFinanceTask. */ interface ICurveFinanceTask { /** Required. Specifies which blockchain to use when reading information from Curve Finance. */ chain?: (oracle_job.OracleJob.CurveFinanceTask.Chain|null); /** Optional. The RPC endpoint to use for blockchain requests. If not specified, a default RPC will be used which may have rate limits. */ provider?: (string|null); /** The on-chain address of the Curve Finance pool to fetch pricing data from. */ poolAddress?: (string|null); /** The number of decimal places to include in the returned price value. */ outDecimals?: (number|null); } /** * Fetch pricing information from Curve Finance pools. * * _**Input**_: None * * _**Returns**_: The current price/exchange rate from the specified Curve pool. * * _**Example**_: Fetch the price from a Curve pool on Ethereum * * ```json * { * "curveFinanceTask": { * "chain": "CHAIN_ETHEREUM", * "poolAddress": "0xbebc44782c7db0a1a60cb6fe97d0b483032ff1c7", * "outDecimals": 18 * } * } * ``` * * _**Example**_: Fetch the price using a custom RPC provider * * ```json * { * "curveFinanceTask": { * "chain": "CHAIN_ETHEREUM", * "provider": "https://eth-mainnet.g.alchemy.com/v2/YOUR-API-KEY", * "poolAddress": "0xbebc44782c7db0a1a60cb6fe97d0b483032ff1c7", * "outDecimals": 18 * } * } * ``` */ class CurveFinanceTask implements ICurveFinanceTask { /** * Constructs a new CurveFinanceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ICurveFinanceTask); /** Required. Specifies which blockchain to use when reading information from Curve Finance. */ public chain: oracle_job.OracleJob.CurveFinanceTask.Chain; /** Optional. The RPC endpoint to use for blockchain requests. If not specified, a default RPC will be used which may have rate limits. */ public provider: string; /** The on-chain address of the Curve Finance pool to fetch pricing data from. */ public poolAddress: string; /** The number of decimal places to include in the returned price value. */ public outDecimals: number; /** * Creates a new CurveFinanceTask instance using the specified properties. * @param [properties] Properties to set * @returns CurveFinanceTask instance */ public static create(properties?: oracle_job.OracleJob.ICurveFinanceTask): oracle_job.OracleJob.CurveFinanceTask; /** * Encodes the specified CurveFinanceTask message. Does not implicitly {@link oracle_job.OracleJob.CurveFinanceTask.verify|verify} messages. * @param message CurveFinanceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ICurveFinanceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified CurveFinanceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.CurveFinanceTask.verify|verify} messages. * @param message CurveFinanceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ICurveFinanceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a CurveFinanceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns CurveFinanceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.CurveFinanceTask; /** * Decodes a CurveFinanceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns CurveFinanceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.CurveFinanceTask; /** * Verifies a CurveFinanceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a CurveFinanceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns CurveFinanceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.CurveFinanceTask; /** * Creates a plain object from a CurveFinanceTask message. Also converts values to other types if specified. * @param message CurveFinanceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.CurveFinanceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this CurveFinanceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for CurveFinanceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace CurveFinanceTask { /** Chain enum. */ enum Chain { CHAIN_ETHEREUM = 0 } } /** Properties of a TurboEthRedemptionRateTask. */ interface ITurboEthRedemptionRateTask { /** TurboEthRedemptionRateTask provider */ provider?: (string|null); } /** Fetches tETH/WETH redemption rate */ class TurboEthRedemptionRateTask implements ITurboEthRedemptionRateTask { /** * Constructs a new TurboEthRedemptionRateTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ITurboEthRedemptionRateTask); /** TurboEthRedemptionRateTask provider. */ public provider: string; /** * Creates a new TurboEthRedemptionRateTask instance using the specified properties. * @param [properties] Properties to set * @returns TurboEthRedemptionRateTask instance */ public static create(properties?: oracle_job.OracleJob.ITurboEthRedemptionRateTask): oracle_job.OracleJob.TurboEthRedemptionRateTask; /** * Encodes the specified TurboEthRedemptionRateTask message. Does not implicitly {@link oracle_job.OracleJob.TurboEthRedemptionRateTask.verify|verify} messages. * @param message TurboEthRedemptionRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ITurboEthRedemptionRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified TurboEthRedemptionRateTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.TurboEthRedemptionRateTask.verify|verify} messages. * @param message TurboEthRedemptionRateTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ITurboEthRedemptionRateTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a TurboEthRedemptionRateTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns TurboEthRedemptionRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.TurboEthRedemptionRateTask; /** * Decodes a TurboEthRedemptionRateTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns TurboEthRedemptionRateTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.TurboEthRedemptionRateTask; /** * Verifies a TurboEthRedemptionRateTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a TurboEthRedemptionRateTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns TurboEthRedemptionRateTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.TurboEthRedemptionRateTask; /** * Creates a plain object from a TurboEthRedemptionRateTask message. Also converts values to other types if specified. * @param message TurboEthRedemptionRateTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.TurboEthRedemptionRateTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this TurboEthRedemptionRateTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for TurboEthRedemptionRateTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a BitFluxTask. */ interface IBitFluxTask { /** Optional. The RPC endpoint to use for requests. If not specified, a default RPC will be used. */ provider?: (string|null); /** The address of the BitFlux pool. */ poolAddress?: (string|null); /** The address of the input token. */ inToken?: (string|null); /** The address of the output token. */ outToken?: (string|null); } /** * Fetch the current swap price from a BitFlux pool. * * _**Input**_: None * * _**Returns**_: The swap price between the specified input and output tokens. * * _**Example**_: Fetch the swap price using a custom RPC provider * * ```json * { * "bitFluxTask": { * "provider": "https://my-custom-rpc.example.com", * "poolAddress": "0x0000000000000000000000000000000000000000", * "inToken": "0x0000000000000000000000000000000000000000", * "outToken": "0x0000000000000000000000000000000000000000" * } * } * ``` */ class BitFluxTask implements IBitFluxTask { /** * Constructs a new BitFluxTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IBitFluxTask); /** Optional. The RPC endpoint to use for requests. If not specified, a default RPC will be used. */ public provider: string; /** The address of the BitFlux pool. */ public poolAddress: string; /** The address of the input token. */ public inToken: string; /** The address of the output token. */ public outToken: string; /** * Creates a new BitFluxTask instance using the specified properties. * @param [properties] Properties to set * @returns BitFluxTask instance */ public static create(properties?: oracle_job.OracleJob.IBitFluxTask): oracle_job.OracleJob.BitFluxTask; /** * Encodes the specified BitFluxTask message. Does not implicitly {@link oracle_job.OracleJob.BitFluxTask.verify|verify} messages. * @param message BitFluxTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IBitFluxTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified BitFluxTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.BitFluxTask.verify|verify} messages. * @param message BitFluxTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IBitFluxTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a BitFluxTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns BitFluxTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.BitFluxTask; /** * Decodes a BitFluxTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns BitFluxTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.BitFluxTask; /** * Verifies a BitFluxTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a BitFluxTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns BitFluxTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.BitFluxTask; /** * Creates a plain object from a BitFluxTask message. Also converts values to other types if specified. * @param message BitFluxTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.BitFluxTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this BitFluxTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for BitFluxTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a FragmetricTask. */ interface IFragmetricTask { /** The Fragmetric token to fetch the price for */ token?: (oracle_job.OracleJob.FragmetricTask.Token|null); } /** * Fetch the current price for Fragmetric liquid restaking tokens. * * _**Input**_: None * * _**Returns**_: The current price of the specified Fragmetric token relative to SOL (1.0 = 1 SOL) * * _**Example**_: Fetch the fragSOL token price * * ```json * { "fragmetricTask": { "token": "TOKEN_FRAG_SOL" } } * ``` */ class FragmetricTask implements IFragmetricTask { /** * Constructs a new FragmetricTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IFragmetricTask); /** The Fragmetric token to fetch the price for */ public token: oracle_job.OracleJob.FragmetricTask.Token; /** * Creates a new FragmetricTask instance using the specified properties. * @param [properties] Properties to set * @returns FragmetricTask instance */ public static create(properties?: oracle_job.OracleJob.IFragmetricTask): oracle_job.OracleJob.FragmetricTask; /** * Encodes the specified FragmetricTask message. Does not implicitly {@link oracle_job.OracleJob.FragmetricTask.verify|verify} messages. * @param message FragmetricTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IFragmetricTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified FragmetricTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.FragmetricTask.verify|verify} messages. * @param message FragmetricTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IFragmetricTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a FragmetricTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns FragmetricTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.FragmetricTask; /** * Decodes a FragmetricTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns FragmetricTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.FragmetricTask; /** * Verifies a FragmetricTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a FragmetricTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns FragmetricTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.FragmetricTask; /** * Creates a plain object from a FragmetricTask message. Also converts values to other types if specified. * @param message FragmetricTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.FragmetricTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this FragmetricTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for FragmetricTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace FragmetricTask { /** Token enum. */ enum Token { TOKEN_FRAG_SOL = 0, TOKEN_N_SOL = 1 } } /** Properties of an EtherfuseTask. */ interface IEtherfuseTask { /** The Etherfuse stablebond token to price. */ token?: (oracle_job.OracleJob.EtherfuseTask.Token|null); } /** * Fetch the current price for Etherfuse Stablebonds. * * _**Input**_: The stablebond token to price. * * _**Returns**_: The price of 1 bond in USDC. * * _**Example**_: Fetch the CETES bond price * * ```json * { "etherfuseTask": { "token": "TOKEN_CETES" } } * ``` */ class EtherfuseTask implements IEtherfuseTask { /** * Constructs a new EtherfuseTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IEtherfuseTask); /** The Etherfuse stablebond token to price. */ public token: oracle_job.OracleJob.EtherfuseTask.Token; /** * Creates a new EtherfuseTask instance using the specified properties. * @param [properties] Properties to set * @returns EtherfuseTask instance */ public static create(properties?: oracle_job.OracleJob.IEtherfuseTask): oracle_job.OracleJob.EtherfuseTask; /** * Encodes the specified EtherfuseTask message. Does not implicitly {@link oracle_job.OracleJob.EtherfuseTask.verify|verify} messages. * @param message EtherfuseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IEtherfuseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified EtherfuseTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.EtherfuseTask.verify|verify} messages. * @param message EtherfuseTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IEtherfuseTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an EtherfuseTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns EtherfuseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.EtherfuseTask; /** * Decodes an EtherfuseTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns EtherfuseTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.EtherfuseTask; /** * Verifies an EtherfuseTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an EtherfuseTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns EtherfuseTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.EtherfuseTask; /** * Creates a plain object from an EtherfuseTask message. Also converts values to other types if specified. * @param message EtherfuseTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.EtherfuseTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this EtherfuseTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for EtherfuseTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace EtherfuseTask { /** Token enum. */ enum Token { TOKEN_CETES = 0, TOKEN_USTRY = 1, TOKEN_EUROB = 2, TOKEN_TESOURO = 3, TOKEN_GILTS = 4 } } /** Properties of a LstHistoricalYieldTask. */ interface ILstHistoricalYieldTask { /** Required. The LST mint address for which historical yield data is queried. */ lstMint?: (string|null); /** Required. The statistical operation to apply to the historical yield dataset. */ operation?: (oracle_job.OracleJob.LstHistoricalYieldTask.Operation|null); /** * Optional. The number of epochs to sample for the computation. * - If `epochs = 0`, all available historical data will be used. * - If `epochs > 0`, only the last `epochs` entries will be included. */ epochs?: (number|null); } /** * Query historical yield data for a given Liquid Staking Token (LST) * and perform a statistical reduction operation over the dataset. * * _**Input**_: LST mint address, reduction operation type, and number of epochs to sample. * * _**Returns**_: The computed yield value based on the specified operation. * * _**Example**_: Compute the median APY for an LST over the last 100 epochs * * ```json * { * "lstHistoricalYieldTask": { * "lstMint": "J1toso1uCk3RLmjorhTtrVwY9HJ7X8V9yYac6Y7kGCPn", * "operation": "OPERATION_MEDIAN", * "epochs": 100 * } * } */ class LstHistoricalYieldTask implements ILstHistoricalYieldTask { /** * Constructs a new LstHistoricalYieldTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ILstHistoricalYieldTask); /** Required. The LST mint address for which historical yield data is queried. */ public lstMint: string; /** Required. The statistical operation to apply to the historical yield dataset. */ public operation: oracle_job.OracleJob.LstHistoricalYieldTask.Operation; /** * Optional. The number of epochs to sample for the computation. * - If `epochs = 0`, all available historical data will be used. * - If `epochs > 0`, only the last `epochs` entries will be included. */ public epochs: number; /** * Creates a new LstHistoricalYieldTask instance using the specified properties. * @param [properties] Properties to set * @returns LstHistoricalYieldTask instance */ public static create(properties?: oracle_job.OracleJob.ILstHistoricalYieldTask): oracle_job.OracleJob.LstHistoricalYieldTask; /** * Encodes the specified LstHistoricalYieldTask message. Does not implicitly {@link oracle_job.OracleJob.LstHistoricalYieldTask.verify|verify} messages. * @param message LstHistoricalYieldTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ILstHistoricalYieldTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified LstHistoricalYieldTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.LstHistoricalYieldTask.verify|verify} messages. * @param message LstHistoricalYieldTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ILstHistoricalYieldTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a LstHistoricalYieldTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns LstHistoricalYieldTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.LstHistoricalYieldTask; /** * Decodes a LstHistoricalYieldTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns LstHistoricalYieldTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.LstHistoricalYieldTask; /** * Verifies a LstHistoricalYieldTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a LstHistoricalYieldTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns LstHistoricalYieldTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.LstHistoricalYieldTask; /** * Creates a plain object from a LstHistoricalYieldTask message. Also converts values to other types if specified. * @param message LstHistoricalYieldTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.LstHistoricalYieldTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this LstHistoricalYieldTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for LstHistoricalYieldTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace LstHistoricalYieldTask { /** Operation enum. */ enum Operation { OPERATION_MEDIAN = 0, OPERATION_MEAN = 1, OPERATION_MIN = 2, OPERATION_MAX = 3 } } /** Properties of a PumpAmmTask. */ interface IPumpAmmTask { /** Required. The address of the liquidity pool in the Pump AMM. */ poolAddress?: (string|null); /** * Optional. The input token amount for the swap. * - This value should in full units of the input token. * - Default value: `1` (Swap 1 full token). */ inAmount?: (number|null); /** * Optional. The maximum allowed slippage for the swap, expressed as a percentage. * - Example: `0.5` represents 0.5% slippage tolerance. * - Default value: `3` (3% slippage tolerance). */ maxSlippage?: (number|null); /** * Optional. Indicates the swap direction: * - `true`: Swapping token X for token Y. * - `false`: Swapping token Y for token X. * - Default value: `true`. */ isXForY?: (boolean|null); } /** * Execute a swap task in the Pump AMM based on the given parameters. * * _**Input**_: Pool address, input token amount, max allowed slippage, and swap direction. * * _**Returns**_: Executes the swap operation in the Pump AMM with the given parameters. * * _**Example**_: Swap 10 tokens from X to Y with a maximum slippage of 0.5% * * ```json * { * "pumpAmmTask": { * "pool_address": "Gf7sXMoP8iRw4iiXmJ1nq4vxcRycbGXy5RL8a8LnTd3v", * "in_amount": "10", * "max_slippage": 0.5, * "is_x_for_y": true * } * } */ class PumpAmmTask implements IPumpAmmTask { /** * Constructs a new PumpAmmTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IPumpAmmTask); /** Required. The address of the liquidity pool in the Pump AMM. */ public poolAddress: string; /** * Optional. The input token amount for the swap. * - This value should in full units of the input token. * - Default value: `1` (Swap 1 full token). */ public inAmount: number; /** * Optional. The maximum allowed slippage for the swap, expressed as a percentage. * - Example: `0.5` represents 0.5% slippage tolerance. * - Default value: `3` (3% slippage tolerance). */ public maxSlippage: number; /** * Optional. Indicates the swap direction: * - `true`: Swapping token X for token Y. * - `false`: Swapping token Y for token X. * - Default value: `true`. */ public isXForY: boolean; /** * Creates a new PumpAmmTask instance using the specified properties. * @param [properties] Properties to set * @returns PumpAmmTask instance */ public static create(properties?: oracle_job.OracleJob.IPumpAmmTask): oracle_job.OracleJob.PumpAmmTask; /** * Encodes the specified PumpAmmTask message. Does not implicitly {@link oracle_job.OracleJob.PumpAmmTask.verify|verify} messages. * @param message PumpAmmTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IPumpAmmTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified PumpAmmTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.PumpAmmTask.verify|verify} messages. * @param message PumpAmmTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IPumpAmmTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a PumpAmmTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns PumpAmmTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.PumpAmmTask; /** * Decodes a PumpAmmTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns PumpAmmTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.PumpAmmTask; /** * Verifies a PumpAmmTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a PumpAmmTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns PumpAmmTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.PumpAmmTask; /** * Creates a plain object from a PumpAmmTask message. Also converts values to other types if specified. * @param message PumpAmmTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.PumpAmmTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this PumpAmmTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for PumpAmmTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a PumpAmmLpTokenPriceTask. */ interface IPumpAmmLpTokenPriceTask { /** Required. The address of the liquidity pool in the Pump AMM. */ poolAddress?: (string|null); /** Required. The job to execute to fetch the price of the pool x token */ xPriceJob?: (oracle_job.IOracleJob|null); /** Required. The job to execute */ yPriceJob?: (oracle_job.IOracleJob|null); } /** * Derive the fair LP token price for a given Pump AMM liquidity pool. * * _**Input**_: Pool address, X token price job, Y token price job. * _**Returns**_: The fair LP token price for the given Pump AMM liquidity pool. * _**Example**_: Derive the fair LP token price for a given Pump AMM liquidity pool. * ```json * { * "pumpAmmLpTokenPriceTask": { * "pool_address": "Gf7sXMoP8iRw4iiXmJ1nq4vxcRycbGXy5RL8a8LnTd3v", // USDC/SOL * "x_price_job": { * "oracleTask": { * "switchboardAddress": "..." // USDC/USD * } * }, * "y_price_job": { * "oracleTask": { * "switchboardAddress": "..." // SOL/USD * } * } * } * } */ class PumpAmmLpTokenPriceTask implements IPumpAmmLpTokenPriceTask { /** * Constructs a new PumpAmmLpTokenPriceTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IPumpAmmLpTokenPriceTask); /** Required. The address of the liquidity pool in the Pump AMM. */ public poolAddress: string; /** Required. The job to execute to fetch the price of the pool x token */ public xPriceJob?: (oracle_job.IOracleJob|null); /** Required. The job to execute */ public yPriceJob?: (oracle_job.IOracleJob|null); /** * Creates a new PumpAmmLpTokenPriceTask instance using the specified properties. * @param [properties] Properties to set * @returns PumpAmmLpTokenPriceTask instance */ public static create(properties?: oracle_job.OracleJob.IPumpAmmLpTokenPriceTask): oracle_job.OracleJob.PumpAmmLpTokenPriceTask; /** * Encodes the specified PumpAmmLpTokenPriceTask message. Does not implicitly {@link oracle_job.OracleJob.PumpAmmLpTokenPriceTask.verify|verify} messages. * @param message PumpAmmLpTokenPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IPumpAmmLpTokenPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified PumpAmmLpTokenPriceTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.PumpAmmLpTokenPriceTask.verify|verify} messages. * @param message PumpAmmLpTokenPriceTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IPumpAmmLpTokenPriceTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a PumpAmmLpTokenPriceTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns PumpAmmLpTokenPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.PumpAmmLpTokenPriceTask; /** * Decodes a PumpAmmLpTokenPriceTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns PumpAmmLpTokenPriceTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.PumpAmmLpTokenPriceTask; /** * Verifies a PumpAmmLpTokenPriceTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a PumpAmmLpTokenPriceTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns PumpAmmLpTokenPriceTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.PumpAmmLpTokenPriceTask; /** * Creates a plain object from a PumpAmmLpTokenPriceTask message. Also converts values to other types if specified. * @param message PumpAmmLpTokenPriceTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.PumpAmmLpTokenPriceTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this PumpAmmLpTokenPriceTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for PumpAmmLpTokenPriceTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an ExponentTask. */ interface IExponentTask { /** ExponentTask vault */ vault?: (string|null); } /** * Get the exchange rate between and Exponent vault pricipal token and * underlying token. * _**Input**_: Vault address * _**Returns**_: The exchange rate between the vault principal token and * underlying token. * _**Example**_: Get the exchange rate between the vault principal token and * underlying token. * ```json * { * "exponentTask": { * "vault": "9YbaicMsXrtupkpD72pdWBfU6R7EJfSByw75sEpDM1uH" * } * } */ class ExponentTask implements IExponentTask { /** * Constructs a new ExponentTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IExponentTask); /** ExponentTask vault. */ public vault: string; /** * Creates a new ExponentTask instance using the specified properties. * @param [properties] Properties to set * @returns ExponentTask instance */ public static create(properties?: oracle_job.OracleJob.IExponentTask): oracle_job.OracleJob.ExponentTask; /** * Encodes the specified ExponentTask message. Does not implicitly {@link oracle_job.OracleJob.ExponentTask.verify|verify} messages. * @param message ExponentTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IExponentTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified ExponentTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.ExponentTask.verify|verify} messages. * @param message ExponentTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IExponentTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an ExponentTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns ExponentTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.ExponentTask; /** * Decodes an ExponentTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns ExponentTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.ExponentTask; /** * Verifies an ExponentTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an ExponentTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns ExponentTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.ExponentTask; /** * Creates a plain object from an ExponentTask message. Also converts values to other types if specified. * @param message ExponentTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.ExponentTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this ExponentTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for ExponentTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of an ExponentPTLinearPricingTask. */ interface IExponentPTLinearPricingTask { /** The Exponent vault address. */ vault?: (string|null); /** The starting price at the vault start timestamp. */ startPrice?: (number|null); } /** * Compute the current price of an Exponent principal token using a linear * schedule from `start_price` to 1.0 at maturity. * * _**Input**_: Vault address and starting price. * _**Returns**_: The current principal token price. * _**Example**_: Price a PT that linearly approaches 1.0 * ```json * { * "exponentPtLinearPricingTask": { * "vault": "9YbaicMsXrtupkpD72pdWBfU6R7EJfSByw75sEpDM1uH", * "startPrice": 0.8 * } * } */ class ExponentPTLinearPricingTask implements IExponentPTLinearPricingTask { /** * Constructs a new ExponentPTLinearPricingTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IExponentPTLinearPricingTask); /** The Exponent vault address. */ public vault: string; /** The starting price at the vault start timestamp. */ public startPrice: number; /** * Creates a new ExponentPTLinearPricingTask instance using the specified properties. * @param [properties] Properties to set * @returns ExponentPTLinearPricingTask instance */ public static create(properties?: oracle_job.OracleJob.IExponentPTLinearPricingTask): oracle_job.OracleJob.ExponentPTLinearPricingTask; /** * Encodes the specified ExponentPTLinearPricingTask message. Does not implicitly {@link oracle_job.OracleJob.ExponentPTLinearPricingTask.verify|verify} messages. * @param message ExponentPTLinearPricingTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IExponentPTLinearPricingTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified ExponentPTLinearPricingTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.ExponentPTLinearPricingTask.verify|verify} messages. * @param message ExponentPTLinearPricingTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IExponentPTLinearPricingTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes an ExponentPTLinearPricingTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns ExponentPTLinearPricingTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.ExponentPTLinearPricingTask; /** * Decodes an ExponentPTLinearPricingTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns ExponentPTLinearPricingTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.ExponentPTLinearPricingTask; /** * Verifies an ExponentPTLinearPricingTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates an ExponentPTLinearPricingTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns ExponentPTLinearPricingTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.ExponentPTLinearPricingTask; /** * Creates a plain object from an ExponentPTLinearPricingTask message. Also converts values to other types if specified. * @param message ExponentPTLinearPricingTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.ExponentPTLinearPricingTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this ExponentPTLinearPricingTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for ExponentPTLinearPricingTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a SolanaToken2022ExtensionTask. */ interface ISolanaToken2022ExtensionTask { /** The base58 encoded publicKey of the token mint address. */ mint?: (string|null); /** SolanaToken2022ExtensionTask extension */ extension?: (oracle_job.OracleJob.SolanaToken2022ExtensionTask.Token2022Extension|null); } /** * Apply Solana Token 2022 extension modifiers to a feed. * _**Input**_: Token address and extension type. * _**Returns**_: The value associated with the token2022 extension. */ class SolanaToken2022ExtensionTask implements ISolanaToken2022ExtensionTask { /** * Constructs a new SolanaToken2022ExtensionTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISolanaToken2022ExtensionTask); /** The base58 encoded publicKey of the token mint address. */ public mint: string; /** SolanaToken2022ExtensionTask extension. */ public extension: oracle_job.OracleJob.SolanaToken2022ExtensionTask.Token2022Extension; /** * Creates a new SolanaToken2022ExtensionTask instance using the specified properties. * @param [properties] Properties to set * @returns SolanaToken2022ExtensionTask instance */ public static create(properties?: oracle_job.OracleJob.ISolanaToken2022ExtensionTask): oracle_job.OracleJob.SolanaToken2022ExtensionTask; /** * Encodes the specified SolanaToken2022ExtensionTask message. Does not implicitly {@link oracle_job.OracleJob.SolanaToken2022ExtensionTask.verify|verify} messages. * @param message SolanaToken2022ExtensionTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISolanaToken2022ExtensionTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SolanaToken2022ExtensionTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SolanaToken2022ExtensionTask.verify|verify} messages. * @param message SolanaToken2022ExtensionTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISolanaToken2022ExtensionTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SolanaToken2022ExtensionTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SolanaToken2022ExtensionTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SolanaToken2022ExtensionTask; /** * Decodes a SolanaToken2022ExtensionTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SolanaToken2022ExtensionTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SolanaToken2022ExtensionTask; /** * Verifies a SolanaToken2022ExtensionTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SolanaToken2022ExtensionTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SolanaToken2022ExtensionTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SolanaToken2022ExtensionTask; /** * Creates a plain object from a SolanaToken2022ExtensionTask message. Also converts values to other types if specified. * @param message SolanaToken2022ExtensionTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SolanaToken2022ExtensionTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SolanaToken2022ExtensionTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SolanaToken2022ExtensionTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace SolanaToken2022ExtensionTask { /** Token2022Extension enum. */ enum Token2022Extension { TOKEN_2022_SCALED_AMOUNT_FACTOR = 0 } } /** Properties of a SwitchboardSurgeTask. */ interface ISwitchboardSurgeTask { /** * Determines which source will be used for pricing. * Default: WEIGHTED average across all sources. */ source?: (oracle_job.OracleJob.SwitchboardSurgeTask.Source|null); /** SwitchboardSurgeTask symbol */ symbol?: (string|null); } /** * Fetch a *live* spot price straight out of the global **Surge** websocket * cache – the same cache that powers our high-speed on-chain oracles. * * _**Input**_ * • `symbol` – the trading-pair symbol as it appears on the exchange * • `source` – which exchange's stream to read from * • `BINANCE` (weight 3) * • `BYBIT` (weight 2) * • `OKX` (weight 2) * • `COINBASE` (weight 3, disabled) * • `BITGET` (weight 2) * • `PYTH` (weight 1) – Pyth oracle network * • `TITAN` (weight 1) – Titan DEX aggregator on Solana * • `WEIGHTED` (default) – use the *weighted median* of all * fresh quotes with the weights shown above. * • `AUTO` – automatically select the best source based on * volume, spread, and data quality metrics. * * _**Returns**_ * The most recent price available from the chosen source. * The task fails if the cached tick is older than **5 s**. * * _**Example**_: Pull the Binance price for BTC / USDT * ```json * { * "switchboardSurgeTask": { * "source": "BINANCE", * "symbol": "BTC/FDUSD" * } * } * ``` * * _**Example**_: Use the weighted-median oracle for BTC / USDT * ```json * { * "switchboardSurgeTask": { * "source": "WEIGHTED", // or omit — WEIGHTED is the default * "symbol": "BTC/USD" * } * } * ``` * * _**Example**_: Pull the Pyth oracle price for PYUSD / USD * ```json * { * "switchboardSurgeTask": { * "source": "PYTH", * "symbol": "PYUSD/USD" * } * } * ``` * * _**Example**_: Pull the Titan DEX aggregator price for SOL / USDC * ```json * { * "switchboardSurgeTask": { * "source": "TITAN", * "symbol": "SOL/USDC" * } * } * ``` * * _**Notes**_ * • Symbols are auto-normalised (case-insensitive, punctuation removed). * • If a venue’s price is stale (> 5 s) it is ignored in the WEIGHTED * calculation. The task errors if **no** fresh price remains. * • The weighted-median algorithm uses cumulative weights based on each * exchange's data quality and volume. Currently active sources: * Binance (3), Bybit (2), OKX (2), Bitget (2), Pyth (1), Titan (1). */ class SwitchboardSurgeTask implements ISwitchboardSurgeTask { /** * Constructs a new SwitchboardSurgeTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ISwitchboardSurgeTask); /** * Determines which source will be used for pricing. * Default: WEIGHTED average across all sources. */ public source: oracle_job.OracleJob.SwitchboardSurgeTask.Source; /** SwitchboardSurgeTask symbol. */ public symbol: string; /** * Creates a new SwitchboardSurgeTask instance using the specified properties. * @param [properties] Properties to set * @returns SwitchboardSurgeTask instance */ public static create(properties?: oracle_job.OracleJob.ISwitchboardSurgeTask): oracle_job.OracleJob.SwitchboardSurgeTask; /** * Encodes the specified SwitchboardSurgeTask message. Does not implicitly {@link oracle_job.OracleJob.SwitchboardSurgeTask.verify|verify} messages. * @param message SwitchboardSurgeTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ISwitchboardSurgeTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified SwitchboardSurgeTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.SwitchboardSurgeTask.verify|verify} messages. * @param message SwitchboardSurgeTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ISwitchboardSurgeTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a SwitchboardSurgeTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns SwitchboardSurgeTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.SwitchboardSurgeTask; /** * Decodes a SwitchboardSurgeTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns SwitchboardSurgeTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.SwitchboardSurgeTask; /** * Verifies a SwitchboardSurgeTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a SwitchboardSurgeTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns SwitchboardSurgeTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.SwitchboardSurgeTask; /** * Creates a plain object from a SwitchboardSurgeTask message. Also converts values to other types if specified. * @param message SwitchboardSurgeTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.SwitchboardSurgeTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this SwitchboardSurgeTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for SwitchboardSurgeTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace SwitchboardSurgeTask { /** Source enum. */ enum Source { WEIGHTED = 0, BINANCE = 1, OKX = 2, BYBIT = 3, COINBASE = 4, BITGET = 5, AUTO = 6, PYTH = 7, TITAN = 8, GATE = 9 } } /** Properties of a Blake2b128Task. */ interface IBlake2b128Task { /** Optional value to hash. If not provided or empty, will use the previous task output. */ value?: (string|null); } /** * Compute the BLAKE2b-128 hash of the input data and convert it to a numeric Decimal value. * * This task follows **cryptographic standard hash truncation** practices used in: * - **SHA-224**: SHA-256 truncated to leftmost 224 bits * - **BLAKE2s-128**: BLAKE2s-256 truncated to leftmost 128 bits * - **BLAKE2b-256**: BLAKE2b-512 truncated to leftmost 256 bits * * _**Input**_: String data to hash (can be from a previous task's output) * * _**Returns**_: A positive Decimal number with 18 decimal places (scale 18) * - Range: `0.000000000000000000` to `79228162514264.337593543950335` (2^96 - 1, scaled) * - Example: `17512223723.299011049621773283` * * --- * * ## Hash-to-Decimal Conversion Algorithm * * ### Step-by-Step Process * * *1. Compute BLAKE2b-128 hash** (produces 16 bytes / 128 bits) * ``` * Input: "Hello, World!" * Output: 3895c59e4aeb0903396b5be3fbec69fe * ``` * * *2. Truncate to 96 bits (12 bytes)** - keep the **most significant** bits * ``` * KEPT (first 12 bytes): 3895c59e4aeb0903396b5be3 * DISCARDED (last 4 bytes): fbec69fe * ``` * This follows cryptographic standards where truncation keeps the leftmost/most significant bits. * * *3. Pad to 16 bytes** for u128 representation * ``` * Add 4 zero bytes at the BEGINNING: * * 000000003895c59e4aeb0903396b5be3 * └──┬──┘└──────────┬───────────┘ * padding first 12 bytes * (4 bytes) (most significant) * ``` * * *4. Interpret as u128 using big-endian** byte order * ``` * Hex: 0x000000003895c59e4aeb0903396b5be3 * Decimal: 17512223723299011049621773283 * ``` * Big-endian is the standard for cryptographic hash representations. * * *5. Convert to Decimal** with scale 18 (18 decimal places) * ``` * Value: 17512223723299011049621773283 * Scaled: 17512223723.299011049621773283 (divided by 10^18) * ``` * Scale 18 prevents precision loss when the protocol rescales values. * Guaranteed to fit in Decimal's 96-bit mantissa (max: 2^96 - 1). * * --- * * ## Reproducibility * * To reproduce this conversion in **any programming language**: * * ### Python Example * ```python * import hashlib * from decimal import Decimal * * # 1. Compute BLAKE2b-128 hash * data = b"Hello, World!" * hash_bytes = hashlib.blake2b(data, digest_size=16).digest() * # Result: b'\x38\x95\xc5\x9e\x4a\xeb\x09\x03\x39\x6b\x5b\xe3\xfb\xec\x69\xfe' * * # 2. Keep first 12 bytes (most significant 96 bits) * truncated = hash_bytes[:12] * * # 3. Pad with 4 zero bytes at the beginning * padded = b'\x00\x00\x00\x00' + truncated * * # 4. Interpret as u128 big-endian * value = int.from_bytes(padded, byteorder='big') * # Result: 17512223723299011049621773283 * * # 5. Apply scale 18 (divide by 10^18) * result = Decimal(value) / Decimal(10**18) * # Result: Decimal('17512223723.299011049621773283') * ``` * * ### JavaScript Example * ```javascript * const crypto = require('crypto'); * * 1. Compute BLAKE2b-128 hash * const hash = crypto.createHash('blake2b512') * .update('Hello, World!') * .digest() * .slice(0, 16); // Take first 16 bytes for BLAKE2b-128 * * 2. Keep first 12 bytes * const truncated = hash.slice(0, 12); * * 3. Pad with 4 zero bytes at the beginning * const padded = Buffer.concat([Buffer.alloc(4), truncated]); * * 4. Interpret as big-endian u128 * let value = 0n; * for (let i = 0; i < 16; i++) { * value = (value << 8n) | BigInt(padded[i]); * } * Result: 17512223723299011049621773283n * * 5. Apply scale 18 (divide by 10^18) * const result = Number(value) / 1e18; * Result: 17512223723.299011 (note: JS loses precision beyond ~15 digits) * ``` * * ### Rust Example * ```rust * use blake2::{Blake2b, Digest}; * use blake2::digest::consts::U16; * use rust_decimal::Decimal; * * type Blake2b128 = Blake2b; * * 1. Compute BLAKE2b-128 hash * let mut hasher = Blake2b128::new(); * hasher.update(b"Hello, World!"); * let hash = hasher.finalize(); * * 2. Keep first 12 bytes and pad at beginning * let mut bytes = [0u8; 16]; * bytes[4..16].copy_from_slice(&hash[0..12]); * * 3. Interpret as big-endian u128 * let value = u128::from_be_bytes(bytes); * Result: 17512223723299011049621773283 * * 4. Apply scale 18 (convert with 18 decimal places) * let result = Decimal::from_i128_with_scale(value as i128, 18); * Result: Decimal("17512223723.299011049621773283") * ``` * * --- * * ## Why This Approach? * * ✅ **Cryptographic Standard**: Follows the same truncation method as SHA-224, BLAKE2s-128, etc. * ✅ **Preserves Entropy**: Keeps the most significant/diverse bits of the hash * ✅ **Big-Endian**: Standard convention for cryptographic hash representations * ✅ **Fits Decimal Range**: 96 bits always fits within Decimal's mantissa (max 2^96-1) * ✅ **Scale 18**: Prevents precision loss when protocol rescales values * ✅ **Reproducible**: Simple algorithm implementable in any programming language * ✅ **Deterministic**: Same input always produces same output * * --- * * _**Example**_: Hash a static string * * ```json * { * "blake2b128Task": { * "value": "Hello, World!" * } * } * ``` * * _**Example**_: Hash the output from a previous task (e.g., HTTP response) * * ```json * { * "tasks": [ * { * "httpTask": { * "url": "https://example.com/data" * } * }, * { * "blake2b128Task": {} * } * ] * } * ``` */ class Blake2b128Task implements IBlake2b128Task { /** * Constructs a new Blake2b128Task. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IBlake2b128Task); /** Optional value to hash. If not provided or empty, will use the previous task output. */ public value: string; /** * Creates a new Blake2b128Task instance using the specified properties. * @param [properties] Properties to set * @returns Blake2b128Task instance */ public static create(properties?: oracle_job.OracleJob.IBlake2b128Task): oracle_job.OracleJob.Blake2b128Task; /** * Encodes the specified Blake2b128Task message. Does not implicitly {@link oracle_job.OracleJob.Blake2b128Task.verify|verify} messages. * @param message Blake2b128Task message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IBlake2b128Task, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified Blake2b128Task message, length delimited. Does not implicitly {@link oracle_job.OracleJob.Blake2b128Task.verify|verify} messages. * @param message Blake2b128Task message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IBlake2b128Task, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a Blake2b128Task message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns Blake2b128Task * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.Blake2b128Task; /** * Decodes a Blake2b128Task message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns Blake2b128Task * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.Blake2b128Task; /** * Verifies a Blake2b128Task message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a Blake2b128Task message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns Blake2b128Task */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.Blake2b128Task; /** * Creates a plain object from a Blake2b128Task message. Also converts values to other types if specified. * @param message Blake2b128Task * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.Blake2b128Task, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this Blake2b128Task to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for Blake2b128Task * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } /** Properties of a StringMapTask. */ interface IStringMapTask { /** The list of key-value mappings. */ mappings?: (oracle_job.OracleJob.StringMapTask.IMapping[]|null); /** Optional default value to return if no mapping matches. If not provided and no match is found, the task will fail. */ defaultValue?: (string|null); /** Whether the string matching should be case-sensitive. Defaults to true. */ caseSensitive?: (boolean|null); /** Optional input value to map. If not provided, will use the previous task output. */ input?: (string|null); } /** * Map a string input to a predefined output value using exact string matching. * * _**Input**_: String from previous task output or specified value * * _**Returns**_: The mapped value as a string if a match is found, or the default value if no match is found. * * _**Example**_: Map "yes" to "1", "no" to "2", "maybe" to "3" (case-insensitive) * * ```json * { * "stringMapTask": { * "mappings": [ * {"key": "yes", "value": "1"}, * {"key": "no", "value": "2"}, * {"key": "maybe", "value": "3"} * ], * "defaultValue": "0", * "caseSensitive": false * } * } * ``` * * _**Example**_: Map HTTP response status with case-sensitive matching * * ```json * { * "tasks": [ * { * "httpTask": { * "url": "https://api.example.com/status" * } * }, * { * "regexExtractTask": { * "pattern": "status\":\\s*\"([^\"]+)\"" * } * }, * { * "stringMapTask": { * "mappings": [ * {"key": "active", "value": "100"}, * {"key": "inactive", "value": "0"}, * {"key": "pending", "value": "50"} * ], * "defaultValue": "-1", * "caseSensitive": true * } * } * ] * } * ``` */ class StringMapTask implements IStringMapTask { /** * Constructs a new StringMapTask. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.IStringMapTask); /** The list of key-value mappings. */ public mappings: oracle_job.OracleJob.StringMapTask.IMapping[]; /** Optional default value to return if no mapping matches. If not provided and no match is found, the task will fail. */ public defaultValue: string; /** Whether the string matching should be case-sensitive. Defaults to true. */ public caseSensitive: boolean; /** Optional input value to map. If not provided, will use the previous task output. */ public input: string; /** * Creates a new StringMapTask instance using the specified properties. * @param [properties] Properties to set * @returns StringMapTask instance */ public static create(properties?: oracle_job.OracleJob.IStringMapTask): oracle_job.OracleJob.StringMapTask; /** * Encodes the specified StringMapTask message. Does not implicitly {@link oracle_job.OracleJob.StringMapTask.verify|verify} messages. * @param message StringMapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.IStringMapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified StringMapTask message, length delimited. Does not implicitly {@link oracle_job.OracleJob.StringMapTask.verify|verify} messages. * @param message StringMapTask message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.IStringMapTask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a StringMapTask message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns StringMapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.StringMapTask; /** * Decodes a StringMapTask message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns StringMapTask * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.StringMapTask; /** * Verifies a StringMapTask message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a StringMapTask message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns StringMapTask */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.StringMapTask; /** * Creates a plain object from a StringMapTask message. Also converts values to other types if specified. * @param message StringMapTask * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.StringMapTask, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this StringMapTask to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for StringMapTask * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } namespace StringMapTask { /** Properties of a Mapping. */ interface IMapping { /** The string key to match against. */ key?: (string|null); /** The value to return if the key matches. */ value?: (string|null); } /** Represents a Mapping. */ class Mapping implements IMapping { /** * Constructs a new Mapping. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.StringMapTask.IMapping); /** The string key to match against. */ public key: string; /** The value to return if the key matches. */ public value: string; /** * Creates a new Mapping instance using the specified properties. * @param [properties] Properties to set * @returns Mapping instance */ public static create(properties?: oracle_job.OracleJob.StringMapTask.IMapping): oracle_job.OracleJob.StringMapTask.Mapping; /** * Encodes the specified Mapping message. Does not implicitly {@link oracle_job.OracleJob.StringMapTask.Mapping.verify|verify} messages. * @param message Mapping message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.StringMapTask.IMapping, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified Mapping message, length delimited. Does not implicitly {@link oracle_job.OracleJob.StringMapTask.Mapping.verify|verify} messages. * @param message Mapping message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.StringMapTask.IMapping, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a Mapping message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns Mapping * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.StringMapTask.Mapping; /** * Decodes a Mapping message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns Mapping * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.StringMapTask.Mapping; /** * Verifies a Mapping message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a Mapping message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns Mapping */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.StringMapTask.Mapping; /** * Creates a plain object from a Mapping message. Also converts values to other types if specified. * @param message Mapping * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.StringMapTask.Mapping, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this Mapping to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for Mapping * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } } /** Properties of a Task. */ interface ITask { /** Task httpTask */ httpTask?: (oracle_job.OracleJob.IHttpTask|null); /** Task jsonParseTask */ jsonParseTask?: (oracle_job.OracleJob.IJsonParseTask|null); /** Task medianTask */ medianTask?: (oracle_job.OracleJob.IMedianTask|null); /** Task meanTask */ meanTask?: (oracle_job.OracleJob.IMeanTask|null); /** Task divideTask */ divideTask?: (oracle_job.OracleJob.IDivideTask|null); /** Task multiplyTask */ multiplyTask?: (oracle_job.OracleJob.IMultiplyTask|null); /** Task lpTokenPriceTask */ lpTokenPriceTask?: (oracle_job.OracleJob.ILpTokenPriceTask|null); /** Task lpExchangeRateTask */ lpExchangeRateTask?: (oracle_job.OracleJob.ILpExchangeRateTask|null); /** Task conditionalTask */ conditionalTask?: (oracle_job.OracleJob.IConditionalTask|null); /** Task valueTask */ valueTask?: (oracle_job.OracleJob.IValueTask|null); /** Task maxTask */ maxTask?: (oracle_job.OracleJob.IMaxTask|null); /** Task regexExtractTask */ regexExtractTask?: (oracle_job.OracleJob.IRegexExtractTask|null); /** Task xstepPriceTask */ xstepPriceTask?: (oracle_job.OracleJob.IXStepPriceTask|null); /** Task addTask */ addTask?: (oracle_job.OracleJob.IAddTask|null); /** Task subtractTask */ subtractTask?: (oracle_job.OracleJob.ISubtractTask|null); /** Task serumSwapTask */ serumSwapTask?: (oracle_job.OracleJob.ISerumSwapTask|null); /** Task openbookTask */ openbookTask?: (oracle_job.OracleJob.ISerumSwapTask|null); /** Task powTask */ powTask?: (oracle_job.OracleJob.IPowTask|null); /** Task lendingRateTask */ lendingRateTask?: (oracle_job.OracleJob.ILendingRateTask|null); /** Task jupiterSwapTask */ jupiterSwapTask?: (oracle_job.OracleJob.IJupiterSwapTask|null); /** Task perpMarketTask */ perpMarketTask?: (oracle_job.OracleJob.IPerpMarketTask|null); /** Task oracleTask */ oracleTask?: (oracle_job.OracleJob.IOracleTask|null); /** Task anchorFetchTask */ anchorFetchTask?: (oracle_job.OracleJob.IAnchorFetchTask|null); /** Task splStakePoolTask */ splStakePoolTask?: (oracle_job.OracleJob.ISplStakePoolTask|null); /** Task splTokenParseTask */ splTokenParseTask?: (oracle_job.OracleJob.ISplTokenParseTask|null); /** Task uniswapExchangeRateTask */ uniswapExchangeRateTask?: (oracle_job.OracleJob.IUniswapExchangeRateTask|null); /** Task sushiswapExchangeRateTask */ sushiswapExchangeRateTask?: (oracle_job.OracleJob.ISushiswapExchangeRateTask|null); /** Task pancakeswapExchangeRateTask */ pancakeswapExchangeRateTask?: (oracle_job.OracleJob.IPancakeswapExchangeRateTask|null); /** Task cacheTask */ cacheTask?: (oracle_job.OracleJob.ICacheTask|null); /** Task sysclockOffsetTask */ sysclockOffsetTask?: (oracle_job.OracleJob.ISysclockOffsetTask|null); /** Task marinadeStateTask */ marinadeStateTask?: (oracle_job.OracleJob.IMarinadeStateTask|null); /** Task solanaAccountDataFetchTask */ solanaAccountDataFetchTask?: (oracle_job.OracleJob.ISolanaAccountDataFetchTask|null); /** Task bufferLayoutParseTask */ bufferLayoutParseTask?: (oracle_job.OracleJob.IBufferLayoutParseTask|null); /** Task cronParseTask */ cronParseTask?: (oracle_job.OracleJob.ICronParseTask|null); /** Task minTask */ minTask?: (oracle_job.OracleJob.IMinTask|null); /** Task comparisonTask */ comparisonTask?: (oracle_job.OracleJob.IComparisonTask|null); /** Task roundTask */ roundTask?: (oracle_job.OracleJob.IRoundTask|null); /** Task boundTask */ boundTask?: (oracle_job.OracleJob.IBoundTask|null); /** Task secretsTask */ secretsTask?: (oracle_job.OracleJob.ISecretsTask|null); /** Task sanctumLstPriceTask */ sanctumLstPriceTask?: (oracle_job.OracleJob.ISanctumLstPriceTask|null); /** Task ondoUsdyTask */ ondoUsdyTask?: (oracle_job.OracleJob.IOndoUsdyTask|null); /** Task meteoraSwapTask */ meteoraSwapTask?: (oracle_job.OracleJob.IMeteoraSwapTask|null); /** Task unixTimeTask */ unixTimeTask?: (oracle_job.OracleJob.IUnixTimeTask|null); /** Task mapleFinanceTask */ mapleFinanceTask?: (oracle_job.OracleJob.IMapleFinanceTask|null); /** Task glyphTask */ glyphTask?: (oracle_job.OracleJob.IGlyphTask|null); /** Task corexTask */ corexTask?: (oracle_job.OracleJob.ICorexTask|null); /** Task solayerSusdTask */ solayerSusdTask?: (oracle_job.OracleJob.ISolayerSusdTask|null); /** Task curveFinanceTask */ curveFinanceTask?: (oracle_job.OracleJob.ICurveFinanceTask|null); /** Task turboEthRedemptionRateTask */ turboEthRedemptionRateTask?: (oracle_job.OracleJob.ITurboEthRedemptionRateTask|null); /** Task bitFluxTask */ bitFluxTask?: (oracle_job.OracleJob.IBitFluxTask|null); /** Task fragmetricTask */ fragmetricTask?: (oracle_job.OracleJob.IFragmetricTask|null); /** Task aftermathTask */ aftermathTask?: (oracle_job.OracleJob.IAftermathTask|null); /** Task etherfuseTask */ etherfuseTask?: (oracle_job.OracleJob.IEtherfuseTask|null); /** Task lstHistoricalYieldTask */ lstHistoricalYieldTask?: (oracle_job.OracleJob.ILstHistoricalYieldTask|null); /** Task pumpAmmTask */ pumpAmmTask?: (oracle_job.OracleJob.IPumpAmmTask|null); /** Task pumpAmmLpTokenPriceTask */ pumpAmmLpTokenPriceTask?: (oracle_job.OracleJob.IPumpAmmLpTokenPriceTask|null); /** Task exponentTask */ exponentTask?: (oracle_job.OracleJob.IExponentTask|null); /** Task exponentPtLinearPricingTask */ exponentPtLinearPricingTask?: (oracle_job.OracleJob.IExponentPTLinearPricingTask|null); /** Task solanaToken_2022ExtensionTask */ solanaToken_2022ExtensionTask?: (oracle_job.OracleJob.ISolanaToken2022ExtensionTask|null); /** Task switchboardSurgeTask */ switchboardSurgeTask?: (oracle_job.OracleJob.ISwitchboardSurgeTask|null); /** Task kalshiApiTask */ kalshiApiTask?: (oracle_job.OracleJob.IKalshiApiTask|null); /** Task titanTask */ titanTask?: (oracle_job.OracleJob.ITitanTask|null); /** Task blake2b128Task */ blake2b128Task?: (oracle_job.OracleJob.IBlake2b128Task|null); /** Task hyloTask */ hyloTask?: (oracle_job.OracleJob.IHyloTask|null); /** Task stringMapTask */ stringMapTask?: (oracle_job.OracleJob.IStringMapTask|null); /** Task kuruTask */ kuruTask?: (oracle_job.OracleJob.IKuruTask|null); /** Task maceTask */ maceTask?: (oracle_job.OracleJob.IMaceTask|null); /** Task vsuiPriceTask */ vsuiPriceTask?: (oracle_job.OracleJob.IVsuiPriceTask|null); /** Task suiLstPriceTask */ suiLstPriceTask?: (oracle_job.OracleJob.ISuiLstPriceTask|null); /** Task surgeTwapTask */ surgeTwapTask?: (oracle_job.OracleJob.ISurgeTwapTask|null); } /** Represents a singular operation performed by an oracle to yield an eventual numerical result. */ class Task implements ITask { /** * Constructs a new Task. * @param [properties] Properties to set */ constructor(properties?: oracle_job.OracleJob.ITask); /** Task httpTask. */ public httpTask?: (oracle_job.OracleJob.IHttpTask|null); /** Task jsonParseTask. */ public jsonParseTask?: (oracle_job.OracleJob.IJsonParseTask|null); /** Task medianTask. */ public medianTask?: (oracle_job.OracleJob.IMedianTask|null); /** Task meanTask. */ public meanTask?: (oracle_job.OracleJob.IMeanTask|null); /** Task divideTask. */ public divideTask?: (oracle_job.OracleJob.IDivideTask|null); /** Task multiplyTask. */ public multiplyTask?: (oracle_job.OracleJob.IMultiplyTask|null); /** Task lpTokenPriceTask. */ public lpTokenPriceTask?: (oracle_job.OracleJob.ILpTokenPriceTask|null); /** Task lpExchangeRateTask. */ public lpExchangeRateTask?: (oracle_job.OracleJob.ILpExchangeRateTask|null); /** Task conditionalTask. */ public conditionalTask?: (oracle_job.OracleJob.IConditionalTask|null); /** Task valueTask. */ public valueTask?: (oracle_job.OracleJob.IValueTask|null); /** Task maxTask. */ public maxTask?: (oracle_job.OracleJob.IMaxTask|null); /** Task regexExtractTask. */ public regexExtractTask?: (oracle_job.OracleJob.IRegexExtractTask|null); /** Task xstepPriceTask. */ public xstepPriceTask?: (oracle_job.OracleJob.IXStepPriceTask|null); /** Task addTask. */ public addTask?: (oracle_job.OracleJob.IAddTask|null); /** Task subtractTask. */ public subtractTask?: (oracle_job.OracleJob.ISubtractTask|null); /** Task serumSwapTask. */ public serumSwapTask?: (oracle_job.OracleJob.ISerumSwapTask|null); /** Task openbookTask. */ public openbookTask?: (oracle_job.OracleJob.ISerumSwapTask|null); /** Task powTask. */ public powTask?: (oracle_job.OracleJob.IPowTask|null); /** Task lendingRateTask. */ public lendingRateTask?: (oracle_job.OracleJob.ILendingRateTask|null); /** Task jupiterSwapTask. */ public jupiterSwapTask?: (oracle_job.OracleJob.IJupiterSwapTask|null); /** Task perpMarketTask. */ public perpMarketTask?: (oracle_job.OracleJob.IPerpMarketTask|null); /** Task oracleTask. */ public oracleTask?: (oracle_job.OracleJob.IOracleTask|null); /** Task anchorFetchTask. */ public anchorFetchTask?: (oracle_job.OracleJob.IAnchorFetchTask|null); /** Task splStakePoolTask. */ public splStakePoolTask?: (oracle_job.OracleJob.ISplStakePoolTask|null); /** Task splTokenParseTask. */ public splTokenParseTask?: (oracle_job.OracleJob.ISplTokenParseTask|null); /** Task uniswapExchangeRateTask. */ public uniswapExchangeRateTask?: (oracle_job.OracleJob.IUniswapExchangeRateTask|null); /** Task sushiswapExchangeRateTask. */ public sushiswapExchangeRateTask?: (oracle_job.OracleJob.ISushiswapExchangeRateTask|null); /** Task pancakeswapExchangeRateTask. */ public pancakeswapExchangeRateTask?: (oracle_job.OracleJob.IPancakeswapExchangeRateTask|null); /** Task cacheTask. */ public cacheTask?: (oracle_job.OracleJob.ICacheTask|null); /** Task sysclockOffsetTask. */ public sysclockOffsetTask?: (oracle_job.OracleJob.ISysclockOffsetTask|null); /** Task marinadeStateTask. */ public marinadeStateTask?: (oracle_job.OracleJob.IMarinadeStateTask|null); /** Task solanaAccountDataFetchTask. */ public solanaAccountDataFetchTask?: (oracle_job.OracleJob.ISolanaAccountDataFetchTask|null); /** Task bufferLayoutParseTask. */ public bufferLayoutParseTask?: (oracle_job.OracleJob.IBufferLayoutParseTask|null); /** Task cronParseTask. */ public cronParseTask?: (oracle_job.OracleJob.ICronParseTask|null); /** Task minTask. */ public minTask?: (oracle_job.OracleJob.IMinTask|null); /** Task comparisonTask. */ public comparisonTask?: (oracle_job.OracleJob.IComparisonTask|null); /** Task roundTask. */ public roundTask?: (oracle_job.OracleJob.IRoundTask|null); /** Task boundTask. */ public boundTask?: (oracle_job.OracleJob.IBoundTask|null); /** Task secretsTask. */ public secretsTask?: (oracle_job.OracleJob.ISecretsTask|null); /** Task sanctumLstPriceTask. */ public sanctumLstPriceTask?: (oracle_job.OracleJob.ISanctumLstPriceTask|null); /** Task ondoUsdyTask. */ public ondoUsdyTask?: (oracle_job.OracleJob.IOndoUsdyTask|null); /** Task meteoraSwapTask. */ public meteoraSwapTask?: (oracle_job.OracleJob.IMeteoraSwapTask|null); /** Task unixTimeTask. */ public unixTimeTask?: (oracle_job.OracleJob.IUnixTimeTask|null); /** Task mapleFinanceTask. */ public mapleFinanceTask?: (oracle_job.OracleJob.IMapleFinanceTask|null); /** Task glyphTask. */ public glyphTask?: (oracle_job.OracleJob.IGlyphTask|null); /** Task corexTask. */ public corexTask?: (oracle_job.OracleJob.ICorexTask|null); /** Task solayerSusdTask. */ public solayerSusdTask?: (oracle_job.OracleJob.ISolayerSusdTask|null); /** Task curveFinanceTask. */ public curveFinanceTask?: (oracle_job.OracleJob.ICurveFinanceTask|null); /** Task turboEthRedemptionRateTask. */ public turboEthRedemptionRateTask?: (oracle_job.OracleJob.ITurboEthRedemptionRateTask|null); /** Task bitFluxTask. */ public bitFluxTask?: (oracle_job.OracleJob.IBitFluxTask|null); /** Task fragmetricTask. */ public fragmetricTask?: (oracle_job.OracleJob.IFragmetricTask|null); /** Task aftermathTask. */ public aftermathTask?: (oracle_job.OracleJob.IAftermathTask|null); /** Task etherfuseTask. */ public etherfuseTask?: (oracle_job.OracleJob.IEtherfuseTask|null); /** Task lstHistoricalYieldTask. */ public lstHistoricalYieldTask?: (oracle_job.OracleJob.ILstHistoricalYieldTask|null); /** Task pumpAmmTask. */ public pumpAmmTask?: (oracle_job.OracleJob.IPumpAmmTask|null); /** Task pumpAmmLpTokenPriceTask. */ public pumpAmmLpTokenPriceTask?: (oracle_job.OracleJob.IPumpAmmLpTokenPriceTask|null); /** Task exponentTask. */ public exponentTask?: (oracle_job.OracleJob.IExponentTask|null); /** Task exponentPtLinearPricingTask. */ public exponentPtLinearPricingTask?: (oracle_job.OracleJob.IExponentPTLinearPricingTask|null); /** Task solanaToken_2022ExtensionTask. */ public solanaToken_2022ExtensionTask?: (oracle_job.OracleJob.ISolanaToken2022ExtensionTask|null); /** Task switchboardSurgeTask. */ public switchboardSurgeTask?: (oracle_job.OracleJob.ISwitchboardSurgeTask|null); /** Task kalshiApiTask. */ public kalshiApiTask?: (oracle_job.OracleJob.IKalshiApiTask|null); /** Task titanTask. */ public titanTask?: (oracle_job.OracleJob.ITitanTask|null); /** Task blake2b128Task. */ public blake2b128Task?: (oracle_job.OracleJob.IBlake2b128Task|null); /** Task hyloTask. */ public hyloTask?: (oracle_job.OracleJob.IHyloTask|null); /** Task stringMapTask. */ public stringMapTask?: (oracle_job.OracleJob.IStringMapTask|null); /** Task kuruTask. */ public kuruTask?: (oracle_job.OracleJob.IKuruTask|null); /** Task maceTask. */ public maceTask?: (oracle_job.OracleJob.IMaceTask|null); /** Task vsuiPriceTask. */ public vsuiPriceTask?: (oracle_job.OracleJob.IVsuiPriceTask|null); /** Task suiLstPriceTask. */ public suiLstPriceTask?: (oracle_job.OracleJob.ISuiLstPriceTask|null); /** Task surgeTwapTask. */ public surgeTwapTask?: (oracle_job.OracleJob.ISurgeTwapTask|null); /** Task Task. */ public Task?: ("httpTask"|"jsonParseTask"|"medianTask"|"meanTask"|"divideTask"|"multiplyTask"|"lpTokenPriceTask"|"lpExchangeRateTask"|"conditionalTask"|"valueTask"|"maxTask"|"regexExtractTask"|"xstepPriceTask"|"addTask"|"subtractTask"|"serumSwapTask"|"openbookTask"|"powTask"|"lendingRateTask"|"jupiterSwapTask"|"perpMarketTask"|"oracleTask"|"anchorFetchTask"|"splStakePoolTask"|"splTokenParseTask"|"uniswapExchangeRateTask"|"sushiswapExchangeRateTask"|"pancakeswapExchangeRateTask"|"cacheTask"|"sysclockOffsetTask"|"marinadeStateTask"|"solanaAccountDataFetchTask"|"bufferLayoutParseTask"|"cronParseTask"|"minTask"|"comparisonTask"|"roundTask"|"boundTask"|"secretsTask"|"sanctumLstPriceTask"|"ondoUsdyTask"|"meteoraSwapTask"|"unixTimeTask"|"mapleFinanceTask"|"glyphTask"|"corexTask"|"solayerSusdTask"|"curveFinanceTask"|"turboEthRedemptionRateTask"|"bitFluxTask"|"fragmetricTask"|"aftermathTask"|"etherfuseTask"|"lstHistoricalYieldTask"|"pumpAmmTask"|"pumpAmmLpTokenPriceTask"|"exponentTask"|"exponentPtLinearPricingTask"|"solanaToken_2022ExtensionTask"|"switchboardSurgeTask"|"kalshiApiTask"|"titanTask"|"blake2b128Task"|"hyloTask"|"stringMapTask"|"kuruTask"|"maceTask"|"vsuiPriceTask"|"suiLstPriceTask"|"surgeTwapTask"); /** * Creates a new Task instance using the specified properties. * @param [properties] Properties to set * @returns Task instance */ public static create(properties?: oracle_job.OracleJob.ITask): oracle_job.OracleJob.Task; /** * Encodes the specified Task message. Does not implicitly {@link oracle_job.OracleJob.Task.verify|verify} messages. * @param message Task message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encode(message: oracle_job.OracleJob.ITask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Encodes the specified Task message, length delimited. Does not implicitly {@link oracle_job.OracleJob.Task.verify|verify} messages. * @param message Task message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ public static encodeDelimited(message: oracle_job.OracleJob.ITask, writer?: $protobuf.Writer): $protobuf.Writer; /** * Decodes a Task message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand * @returns Task * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): oracle_job.OracleJob.Task; /** * Decodes a Task message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from * @returns Task * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): oracle_job.OracleJob.Task; /** * Verifies a Task message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** * Creates a Task message from a plain object. Also converts values to their respective internal types. * @param object Plain object * @returns Task */ public static fromObject(object: { [k: string]: any }): oracle_job.OracleJob.Task; /** * Creates a plain object from a Task message. Also converts values to other types if specified. * @param message Task * @param [options] Conversion options * @returns Plain object */ public static toObject(message: oracle_job.OracleJob.Task, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** * Converts this Task to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; /** * Gets the default type url for Task * @param [typeUrlPrefix] your custom typeUrlPrefix(default "type.googleapis.com") * @returns The default type url */ public static getTypeUrl(typeUrlPrefix?: string): string; } } }