import { Keys, Extends, PropSelector } from "@onebro/oba-common"; import { Model, ModelSignature, ModelBaseTypeSig, Stages, ModelMiscReference } from "@onebro/oba-mongoose"; import { DocStatuses } from "./00-common"; import { UploadAsProp } from "./02-upload"; export declare type VendorItemProps = { _type_: "vendor-item"; service: "dc" | "wnf"; type: string; price: number; cur: "USD"; prefs: Partial<{ starch: boolean; detergent: string; softener: string; dryersheet: string; }>; owner: ModelMiscReference<"UserProfile">; img: UploadAsProp[t]; published: Date; }; export declare type VendorItemConfigKeys = "type" | "price" | "cur" | "owner" | "service"; export declare type VendorItemConfigOptKeys = "img" | "prefs"; export declare type VendorItemInstanceKeys = VendorItemConfigKeys | VendorItemConfigOptKeys; export declare type VendorItemJsonKeys = VendorItemInstanceKeys | "_type_" | "published"; export declare type VendorItemPreviewKeys = "service" | "type" | "price" | "img" | "prefs"; export declare type VendorItemSelfRefs = {}; export declare type VendorItemMethods = {}; export declare type VendorItemPropKeys = Keys>; export declare type VendorItemPropSelector = undefined, j extends VendorItemPropKeys = undefined> = PropSelector, k, j>; export declare type VendorItemSignature = ModelSignature, VendorItemPropSelector<"I", VendorItemInstanceKeys> & VendorItemMethods, VendorItemPropSelector<"J", VendorItemJsonKeys>, VendorItemPropSelector<"J", VendorItemPreviewKeys>, DocStatuses, VendorItemSelfRefs>; export declare type VendorItem = Model; export declare type VendorItemAsProp = ModelBaseTypeSig, Extends<[IsArr], [true | 1], VendorItem["instance"][], VendorItem["instance"]>, Extends<[IsArr], [true | 1], VendorItem["preview"][], VendorItem["preview"]>>;