import { IAuthorizeCreditCardObject, IPurpose } from '../action/authorize/paymentMethod/any'; import { IAcceptedPaymentMethodOfferAsInstrument, ILocation } from '../action/trade/pay'; import { IExtendId } from '../autoGenerated'; import { PaymentServiceType } from '../service/paymentService'; import { ITaskAttributes } from '../task'; import { TaskName } from '../taskName'; export type IInstrument = IAcceptedPaymentMethodOfferAsInstrument; export interface IData { project: { id: string; }; agent: { id: string; }; object: Pick; purpose: IPurpose; paymentServiceType: PaymentServiceType; location: ILocation; /** * add identifier for an unique index(2025-02-25~) * authorize payment action identifier */ identifier?: string; /** * クレジットカードIFあるいは決済カードIFの場合に対応決済方法オファーを指定する */ instrument?: IInstrument[]; } export interface IAttributes extends ITaskAttributes { name: TaskName.PublishPaymentUrl; data: IData; } /** * 決済URL発行タスク */ export type ITask = IExtendId;