import * as types from "../types";
import * as borsh from "@coral-xyz/borsh";
export interface PythJSON {
    kind: "Pyth";
}
export declare class Pyth {
    static readonly discriminator = 0;
    static readonly kind = "Pyth";
    readonly discriminator = 0;
    readonly kind = "Pyth";
    toJSON(): PythJSON;
    toEncodable(): {
        Pyth: {};
    };
}
export interface DeprecatedPlaceholder1JSON {
    kind: "DeprecatedPlaceholder1";
}
export declare class DeprecatedPlaceholder1 {
    static readonly discriminator = 1;
    static readonly kind = "DeprecatedPlaceholder1";
    readonly discriminator = 1;
    readonly kind = "DeprecatedPlaceholder1";
    toJSON(): DeprecatedPlaceholder1JSON;
    toEncodable(): {
        DeprecatedPlaceholder1: {};
    };
}
export interface SwitchboardV2JSON {
    kind: "SwitchboardV2";
}
export declare class SwitchboardV2 {
    static readonly discriminator = 2;
    static readonly kind = "SwitchboardV2";
    readonly discriminator = 2;
    readonly kind = "SwitchboardV2";
    toJSON(): SwitchboardV2JSON;
    toEncodable(): {
        SwitchboardV2: {};
    };
}
export interface DeprecatedPlaceholder2JSON {
    kind: "DeprecatedPlaceholder2";
}
export declare class DeprecatedPlaceholder2 {
    static readonly discriminator = 3;
    static readonly kind = "DeprecatedPlaceholder2";
    readonly discriminator = 3;
    readonly kind = "DeprecatedPlaceholder2";
    toJSON(): DeprecatedPlaceholder2JSON;
    toEncodable(): {
        DeprecatedPlaceholder2: {};
    };
}
export interface CTokenJSON {
    kind: "CToken";
}
export declare class CToken {
    static readonly discriminator = 4;
    static readonly kind = "CToken";
    readonly discriminator = 4;
    readonly kind = "CToken";
    toJSON(): CTokenJSON;
    toEncodable(): {
        CToken: {};
    };
}
export interface SplStakeJSON {
    kind: "SplStake";
}
export declare class SplStake {
    static readonly discriminator = 5;
    static readonly kind = "SplStake";
    readonly discriminator = 5;
    readonly kind = "SplStake";
    toJSON(): SplStakeJSON;
    toEncodable(): {
        SplStake: {};
    };
}
export interface KTokenJSON {
    kind: "KToken";
}
export declare class KToken {
    static readonly discriminator = 6;
    static readonly kind = "KToken";
    readonly discriminator = 6;
    readonly kind = "KToken";
    toJSON(): KTokenJSON;
    toEncodable(): {
        KToken: {};
    };
}
export interface PythEMAJSON {
    kind: "PythEMA";
}
export declare class PythEMA {
    static readonly discriminator = 7;
    static readonly kind = "PythEMA";
    readonly discriminator = 7;
    readonly kind = "PythEMA";
    toJSON(): PythEMAJSON;
    toEncodable(): {
        PythEMA: {};
    };
}
export interface MsolStakeJSON {
    kind: "MsolStake";
}
export declare class MsolStake {
    static readonly discriminator = 8;
    static readonly kind = "MsolStake";
    readonly discriminator = 8;
    readonly kind = "MsolStake";
    toJSON(): MsolStakeJSON;
    toEncodable(): {
        MsolStake: {};
    };
}
export interface KTokenToTokenAJSON {
    kind: "KTokenToTokenA";
}
export declare class KTokenToTokenA {
    static readonly discriminator = 9;
    static readonly kind = "KTokenToTokenA";
    readonly discriminator = 9;
    readonly kind = "KTokenToTokenA";
    toJSON(): KTokenToTokenAJSON;
    toEncodable(): {
        KTokenToTokenA: {};
    };
}
export interface KTokenToTokenBJSON {
    kind: "KTokenToTokenB";
}
export declare class KTokenToTokenB {
    static readonly discriminator = 10;
    static readonly kind = "KTokenToTokenB";
    readonly discriminator = 10;
    readonly kind = "KTokenToTokenB";
    toJSON(): KTokenToTokenBJSON;
    toEncodable(): {
        KTokenToTokenB: {};
    };
}
export interface JupiterLpFetchJSON {
    kind: "JupiterLpFetch";
}
export declare class JupiterLpFetch {
    static readonly discriminator = 11;
    static readonly kind = "JupiterLpFetch";
    readonly discriminator = 11;
    readonly kind = "JupiterLpFetch";
    toJSON(): JupiterLpFetchJSON;
    toEncodable(): {
        JupiterLpFetch: {};
    };
}
export interface ScopeTwapJSON {
    kind: "ScopeTwap";
}
export declare class ScopeTwap {
    static readonly discriminator = 12;
    static readonly kind = "ScopeTwap";
    readonly discriminator = 12;
    readonly kind = "ScopeTwap";
    toJSON(): ScopeTwapJSON;
    toEncodable(): {
        ScopeTwap: {};
    };
}
export interface OrcaWhirlpoolAtoBJSON {
    kind: "OrcaWhirlpoolAtoB";
}
export declare class OrcaWhirlpoolAtoB {
    static readonly discriminator = 13;
    static readonly kind = "OrcaWhirlpoolAtoB";
    readonly discriminator = 13;
    readonly kind = "OrcaWhirlpoolAtoB";
    toJSON(): OrcaWhirlpoolAtoBJSON;
    toEncodable(): {
        OrcaWhirlpoolAtoB: {};
    };
}
export interface OrcaWhirlpoolBtoAJSON {
    kind: "OrcaWhirlpoolBtoA";
}
export declare class OrcaWhirlpoolBtoA {
    static readonly discriminator = 14;
    static readonly kind = "OrcaWhirlpoolBtoA";
    readonly discriminator = 14;
    readonly kind = "OrcaWhirlpoolBtoA";
    toJSON(): OrcaWhirlpoolBtoAJSON;
    toEncodable(): {
        OrcaWhirlpoolBtoA: {};
    };
}
export interface RaydiumAmmV3AtoBJSON {
    kind: "RaydiumAmmV3AtoB";
}
export declare class RaydiumAmmV3AtoB {
    static readonly discriminator = 15;
    static readonly kind = "RaydiumAmmV3AtoB";
    readonly discriminator = 15;
    readonly kind = "RaydiumAmmV3AtoB";
    toJSON(): RaydiumAmmV3AtoBJSON;
    toEncodable(): {
        RaydiumAmmV3AtoB: {};
    };
}
export interface RaydiumAmmV3BtoAJSON {
    kind: "RaydiumAmmV3BtoA";
}
export declare class RaydiumAmmV3BtoA {
    static readonly discriminator = 16;
    static readonly kind = "RaydiumAmmV3BtoA";
    readonly discriminator = 16;
    readonly kind = "RaydiumAmmV3BtoA";
    toJSON(): RaydiumAmmV3BtoAJSON;
    toEncodable(): {
        RaydiumAmmV3BtoA: {};
    };
}
export interface JupiterLpComputeJSON {
    kind: "JupiterLpCompute";
}
export declare class JupiterLpCompute {
    static readonly discriminator = 17;
    static readonly kind = "JupiterLpCompute";
    readonly discriminator = 17;
    readonly kind = "JupiterLpCompute";
    toJSON(): JupiterLpComputeJSON;
    toEncodable(): {
        JupiterLpCompute: {};
    };
}
export interface MeteoraDlmmAtoBJSON {
    kind: "MeteoraDlmmAtoB";
}
export declare class MeteoraDlmmAtoB {
    static readonly discriminator = 18;
    static readonly kind = "MeteoraDlmmAtoB";
    readonly discriminator = 18;
    readonly kind = "MeteoraDlmmAtoB";
    toJSON(): MeteoraDlmmAtoBJSON;
    toEncodable(): {
        MeteoraDlmmAtoB: {};
    };
}
export interface MeteoraDlmmBtoAJSON {
    kind: "MeteoraDlmmBtoA";
}
export declare class MeteoraDlmmBtoA {
    static readonly discriminator = 19;
    static readonly kind = "MeteoraDlmmBtoA";
    readonly discriminator = 19;
    readonly kind = "MeteoraDlmmBtoA";
    toJSON(): MeteoraDlmmBtoAJSON;
    toEncodable(): {
        MeteoraDlmmBtoA: {};
    };
}
export interface JupiterLpScopeJSON {
    kind: "JupiterLpScope";
}
export declare class JupiterLpScope {
    static readonly discriminator = 20;
    static readonly kind = "JupiterLpScope";
    readonly discriminator = 20;
    readonly kind = "JupiterLpScope";
    toJSON(): JupiterLpScopeJSON;
    toEncodable(): {
        JupiterLpScope: {};
    };
}
export interface PythPullJSON {
    kind: "PythPull";
}
export declare class PythPull {
    static readonly discriminator = 21;
    static readonly kind = "PythPull";
    readonly discriminator = 21;
    readonly kind = "PythPull";
    toJSON(): PythPullJSON;
    toEncodable(): {
        PythPull: {};
    };
}
export interface PythPullEMAJSON {
    kind: "PythPullEMA";
}
export declare class PythPullEMA {
    static readonly discriminator = 22;
    static readonly kind = "PythPullEMA";
    readonly discriminator = 22;
    readonly kind = "PythPullEMA";
    toJSON(): PythPullEMAJSON;
    toEncodable(): {
        PythPullEMA: {};
    };
}
export interface FixedPriceJSON {
    kind: "FixedPrice";
}
export declare class FixedPrice {
    static readonly discriminator = 23;
    static readonly kind = "FixedPrice";
    readonly discriminator = 23;
    readonly kind = "FixedPrice";
    toJSON(): FixedPriceJSON;
    toEncodable(): {
        FixedPrice: {};
    };
}
export interface SwitchboardOnDemandJSON {
    kind: "SwitchboardOnDemand";
}
export declare class SwitchboardOnDemand {
    static readonly discriminator = 24;
    static readonly kind = "SwitchboardOnDemand";
    readonly discriminator = 24;
    readonly kind = "SwitchboardOnDemand";
    toJSON(): SwitchboardOnDemandJSON;
    toEncodable(): {
        SwitchboardOnDemand: {};
    };
}
export interface JitoRestakingJSON {
    kind: "JitoRestaking";
}
export declare class JitoRestaking {
    static readonly discriminator = 25;
    static readonly kind = "JitoRestaking";
    readonly discriminator = 25;
    readonly kind = "JitoRestaking";
    toJSON(): JitoRestakingJSON;
    toEncodable(): {
        JitoRestaking: {};
    };
}
export interface ChainlinkJSON {
    kind: "Chainlink";
}
export declare class Chainlink {
    static readonly discriminator = 26;
    static readonly kind = "Chainlink";
    readonly discriminator = 26;
    readonly kind = "Chainlink";
    toJSON(): ChainlinkJSON;
    toEncodable(): {
        Chainlink: {};
    };
}
export interface DiscountToMaturityJSON {
    kind: "DiscountToMaturity";
}
export declare class DiscountToMaturity {
    static readonly discriminator = 27;
    static readonly kind = "DiscountToMaturity";
    readonly discriminator = 27;
    readonly kind = "DiscountToMaturity";
    toJSON(): DiscountToMaturityJSON;
    toEncodable(): {
        DiscountToMaturity: {};
    };
}
export interface MostRecentOfJSON {
    kind: "MostRecentOf";
}
export declare class MostRecentOf {
    static readonly discriminator = 28;
    static readonly kind = "MostRecentOf";
    readonly discriminator = 28;
    readonly kind = "MostRecentOf";
    toJSON(): MostRecentOfJSON;
    toEncodable(): {
        MostRecentOf: {};
    };
}
export interface PythLazerJSON {
    kind: "PythLazer";
}
export declare class PythLazer {
    static readonly discriminator = 29;
    static readonly kind = "PythLazer";
    readonly discriminator = 29;
    readonly kind = "PythLazer";
    toJSON(): PythLazerJSON;
    toEncodable(): {
        PythLazer: {};
    };
}
export declare function fromDecoded(obj: any): types.OracleTypeKind;
export declare function fromJSON(obj: types.OracleTypeJSON): types.OracleTypeKind;
export declare function layout(property?: string): borsh.EnumLayout<unknown>;
//# sourceMappingURL=OracleType.d.ts.map