/* * Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT. */ import { optionInstructionsCancelOptionInstruction } from "../funcs/optionInstructionsCancelOptionInstruction.js"; import { optionInstructionsCreateOptionInstruction } from "../funcs/optionInstructionsCreateOptionInstruction.js"; import { optionInstructionsGetOptionInstruction } from "../funcs/optionInstructionsGetOptionInstruction.js"; import { optionInstructionsListOptionInstructions } from "../funcs/optionInstructionsListOptionInstructions.js"; import { ClientSDK, RequestOptions } from "../lib/sdks.js"; import * as components from "../models/components/index.js"; import * as operations from "../models/operations/index.js"; import { unwrapAsync } from "../types/fp.js"; export class OptionInstructions extends ClientSDK { /** * Create Option Instruction * * @remarks * CreateOptionInstruction creates a new option instruction for trading actions */ async createOptionInstruction( optionInstructionCreate: components.OptionInstructionCreate, accountId: string, assetId: string, options?: RequestOptions, ): Promise { return unwrapAsync(optionInstructionsCreateOptionInstruction( this, optionInstructionCreate, accountId, assetId, options, )); } /** * List Option Instructions * * @remarks * ListOptionInstructions lists option instructions with optional filtering and pagination */ async listOptionInstructions( request: operations.ExerciseServiceListOptionInstructionsRequest, options?: RequestOptions, ): Promise { return unwrapAsync(optionInstructionsListOptionInstructions( this, request, options, )); } /** * Get Option Instruction * * @remarks * GetOptionInstruction retrieves an existing instruction by name */ async getOptionInstruction( accountId: string, assetId: string, instructionId: string, options?: RequestOptions, ): Promise { return unwrapAsync(optionInstructionsGetOptionInstruction( this, accountId, assetId, instructionId, options, )); } /** * Cancel Option Instruction * * @remarks * CancelOptionInstruction cancels an existing instruction by name */ async cancelOptionInstruction( cancelOptionInstructionRequestCreate: components.CancelOptionInstructionRequestCreate, accountId: string, assetId: string, instructionId: string, options?: RequestOptions, ): Promise { return unwrapAsync(optionInstructionsCancelOptionInstruction( this, cancelOptionInstructionRequestCreate, accountId, assetId, instructionId, options, )); } }