import type { COAFactory } from '@coasystems/factory'; import { IHowToDirection as IBaseHowToDirection, IHowToSection as IBaseHowToSection, IHowToStep as IBaseHowToStep, IRecipe as IBaseRecipe, RecipeCategory, StepIdentifier } from '../recipe'; export type IStateReserveArgs = COAFactory.reserve.IStateReserveArgs; export type IStateReserveResult = COAFactory.reserve.IStateReserveResult; export type IUpdReserveArgs = COAFactory.reserve.IUpdReserveArgs; export type IUpdReserveResult = COAFactory.reserve.IUpdReserveResult; export interface IDirectionStateReserve extends IBaseHowToDirection { beforeMedia?: IStateReserveArgs; afterMedia?: IStateReserveResult; } export interface IDirectionUpdReserve extends IBaseHowToDirection { beforeMedia?: IUpdReserveArgs; afterMedia?: IUpdReserveResult; } export interface IStepStateReserve extends IBaseHowToStep { identifier: StepIdentifier.stateReserve; itemListElement: [IDirectionStateReserve]; } export interface IStepUpdReserve extends IBaseHowToStep { identifier: StepIdentifier.updReserve; itemListElement: [IDirectionUpdReserve]; } export interface IHowToSection extends IBaseHowToSection { itemListElement: [IStepStateReserve, IStepUpdReserve]; } export interface IRecipe extends IBaseRecipe { recipeCategory: RecipeCategory.confirmCOAReserve; step: IHowToSection[]; }