import type { GMOFactory } from '@gmopg/factory'; import { IHowToDirection as IBaseHowToDirection, IHowToSection as IBaseHowToSection, IHowToStep as IBaseHowToStep, IRecipe as IBaseRecipe, RecipeCategory, StepIdentifier } from '../recipe'; export type IEntryTranArgs = GMOFactory.service.credit.IEntryTranArgs; export type IEntryTranResult = GMOFactory.service.credit.IEntryTranResult; export type IExecTranArgs = GMOFactory.service.credit.IExecTranArgs; export type IExecTranResult = GMOFactory.service.credit.IExecTranResult; export interface IDirectionEntryTran extends IBaseHowToDirection { beforeMedia?: IEntryTranArgs; afterMedia?: IEntryTranResult; } export interface IDirectionExecTran extends IBaseHowToDirection { beforeMedia?: IExecTranArgs; afterMedia?: IExecTranResult; } export interface IStepEntryTran extends IBaseHowToStep { identifier: StepIdentifier.entryTran; itemListElement: [IDirectionEntryTran]; } export interface IStepExecTran extends IBaseHowToStep { identifier: StepIdentifier.execTran; itemListElement: [IDirectionExecTran]; } export interface IHowToSection extends IBaseHowToSection { itemListElement: [IStepEntryTran, IStepExecTran]; } export interface IRecipe extends IBaseRecipe { recipeCategory: RecipeCategory.authorizeInvoice; step: IHowToSection[]; }