import { IParticipantAsWebApplication, IParticipantAsPerson, IParticipantAsProject, ISameAs, IAction as IBaseAction, IAttributes as IBaseAttributes } from '../../action'; import { ActionType } from '../../actionType'; import { EventType } from '../../eventType'; import { OrderType } from '../../order'; export type IAgent = IParticipantAsWebApplication | IParticipantAsPerson | IParticipantAsProject; export interface IObjectAsEvent { id: string; typeOf: EventType.ScreeningEvent; } export interface IObjectAsOrder { orderNumber: string; typeOf: OrderType.Order; } export type IObject = IObjectAsEvent | IObjectAsOrder; export interface IResult { } export type IError = any; export interface IAttributes extends Pick, 'agent' | 'error' | 'object' | 'project' | 'result' | 'sameAs' | 'typeOf'> { purpose?: never; agent: IAgent; object: IObject; sameAs: ISameAs; } /** * 汎用リソース検証アクション */ export type IAction = IBaseAction;