Function getBackupOracleInstruction

  • Parameters

    • program: Program<Perpetuals>
    • poolConfig: PoolConfig
    • backupOracleSecretKey: string
    • backupCaches: DecodeStruct<{
          fields: [{
              name: "price";
              type: "i64";
          }, {
              name: "expo";
              type: "i32";
          }, {
              name: "conf";
              type: "i64";
          }, {
              name: "emaPrice";
              type: "i64";
          }, {
              name: "publishTime";
              type: "i64";
          }];
          kind: "struct";
      }, DecodedHelper<[{
          name: "AddCollateralParams";
          type: {
              fields: [{
                  name: "collateralDelta";
                  type: "u64";
              }];
              kind: "struct";
          };
      }, {
          name: "AddCollectionParams";
          type: {
              fields: [];
              kind: "struct";
          };
      }, {
          name: "AddCompoundingLiquidityParams";
          type: {
              fields: [{
                  name: "amountIn";
                  type: "u64";
              }, {
                  name: "minCompoundingAmountOut";
                  type: "u64";
              }];
              kind: "struct";
          };
      }, {
          name: "AddCustodyParams";
          type: {
              fields: [{
                  name: "isStable";
                  type: "bool";
              }, {
                  name: "depegAdjustment";
                  type: "bool";
              }, {
                  name: "isVirtual";
                  type: "bool";
              }, {
                  name: "oracle";
                  type: {
                      defined: "OracleParams";
                  };
              }, {
                  name: "pricing";
                  type: {
                      defined: "PricingParams";
                  };
              }, {
                  name: "permissions";
                  type: {
                      defined: "Permissions";
                  };
              }, {
                  name: "fees";
                  type: {
                      defined: "Fees";
                  };
              }, {
                  name: "borrowRate";
                  type: {
                      defined: "BorrowRateParams";
                  };
              }, {
                  name: "ratios";
                  type: {
                      vec: {
                          defined: "TokenRatios";
                      };
                  };
              }];
              kind: "struct";
          };
      }, {
          name: "AddInternalOracleParams";
          type: {
              fields: [];
              kind: "struct";
          };
      }], DecodedHelper<[{
          name: "AddCollateralParams";
          type: {
              fields: [{
                  name: "collateralDelta";
                  type: "u64";
              }];
              kind: "struct";
          };
      }, {
          name: "AddCollectionParams";
          type: {
              fields: [];
              kind: "struct";
          };
      }, {
          name: "AddCompoundingLiquidityParams";
          type: {
              fields: [{
                  name: "amountIn";
                  type: "u64";
              }, {
                  name: "minCompoundingAmountOut";
                  type: "u64";
              }];
              kind: "struct";
          };
      }, {
          name: "AddCustodyParams";
          type: {
              fields: [{
                  name: "isStable";
                  type: "bool";
              }, {
                  name: "depegAdjustment";
                  type: "bool";
              }, {
                  name: "isVirtual";
                  type: "bool";
              }, {
                  name: "oracle";
                  type: {
                      defined: "OracleParams";
                  };
              }, {
                  name: "pricing";
                  type: {
                      defined: "PricingParams";
                  };
              }, {
                  name: "permissions";
                  type: {
                      defined: "Permissions";
                  };
              }, {
                  name: "fees";
                  type: {
                      defined: "Fees";
                  };
              }, {
                  name: "borrowRate";
                  type: {
                      defined: "BorrowRateParams";
                  };
              }, {
                  name: "ratios";
                  type: {
                      vec: {
                          defined: ...;
                      };
                  };
              }];
              kind: "struct";
          };
      }, {
          name: "AddInternalOracleParams";
          type: {
              fields: [];
              kind: "struct";
          };
      }], DecodedHelper<[{
          name: "AddCollateralParams";
          type: {
              fields: [{
                  name: "collateralDelta";
                  type: "u64";
              }];
              kind: "struct";
          };
      }, {
          name: "AddCollectionParams";
          type: {
              fields: [];
              kind: "struct";
          };
      }, {
          name: "AddCompoundingLiquidityParams";
          type: {
              fields: [{
                  name: "amountIn";
                  type: "u64";
              }, {
                  name: "minCompoundingAmountOut";
                  type: "u64";
              }];
              kind: "struct";
          };
      }, {
          name: "AddCustodyParams";
          type: {
              fields: [{
                  name: "isStable";
                  type: "bool";
              }, {
                  name: "depegAdjustment";
                  type: "bool";
              }, {
                  name: "isVirtual";
                  type: "bool";
              }, {
                  name: "oracle";
                  type: {
                      defined: ...;
                  };
              }, {
                  name: "pricing";
                  type: {
                      defined: ...;
                  };
              }, {
                  name: "permissions";
                  type: {
                      defined: ...;
                  };
              }, {
                  name: "fees";
                  type: {
                      defined: ...;
                  };
              }, {
                  name: "borrowRate";
                  type: {
                      defined: ...;
                  };
              }, {
                  name: "ratios";
                  type: {
                      vec: ...;
                  };
              }];
              kind: "struct";
          };
      }, {
          name: "AddInternalOracleParams";
          type: {
              fields: [];
              kind: "struct";
          };
      }], EmptyDefined>>>>[]

    Returns TransactionInstruction