import { IParticipantAsProject, IAction as IBaseAction, IAttributes as IBaseAttributes } from '../../action'; import { ActionType } from '../../actionType'; import { AssetTransactionType } from '../../assetTransactionType'; import { IOrder } from '../../order'; import { IDelTmpReserveArgs, IRecipe, IResultAsError } from '../../recipe/cancelPendingCOAReserve'; import { IAvailableReservationStatusType } from '../../reservation'; import { ITransaction as IPlaceOrder } from '../../transaction/placeOrder'; import { IAction as IReturnReserveTransactionAction } from '../transfer/return/reserveTransaction'; export { IRecipe as ICancelPendingCOAReserveRecipe }; export type IDelTmpReserveResultAsError = IResultAsError; export type IAgent = IParticipantAsProject; export type IObject = IDelTmpReserveArgs & { reservationStatus: IAvailableReservationStatusType; transactionNumber: string; typeOf: AssetTransactionType.COAReserveTransaction; }; export interface IResult { } export type IOrderAsInstrument = Pick; export type IReturnActionAsInstrument = Pick; export type IPlaceOrderAsInstrument = Pick; export type IInstrument = IOrderAsInstrument | IReturnActionAsInstrument | IPlaceOrderAsInstrument; export interface IAttributes extends Pick, 'typeOf' | 'result' | 'project' | 'object' | 'agent' | 'instrument'> { agent: IAgent; instrument?: IInstrument[]; } /** * cancel coa reserve */ export type IAction = IBaseAction;