import { type TokenSurrogate, type WarehousingConfiguration } from '@unchainedshop/core-warehousing'; import { type WarehousingContext } from '../core-index.ts'; export default function registerVirtualWarehousing>({ adapterId, orderIndex, stock, tokenize, tokenMetadata, isInvalidateable, }: { adapterId: string; orderIndex?: number; stock?: number | ((referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise); tokenize: (configuration: WarehousingConfiguration, context: WarehousingContext) => Promise[]>; tokenMetadata?: (serialNumber: string, referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise; isInvalidateable?: (serialNumber: string, referenceDate: Date, configuration: WarehousingConfiguration, context: WarehousingContext) => Promise; }): void;