import type { GeoCoordinates, GeoPosition, IdObject, ParentsMap, PostalAddress, DateValue } from "./common.js"; import type EJSONType from "../../EJSONType.js"; type ObjectIDCtor = typeof EJSONType["ObjectID"]; type ObjectID = InstanceType; export declare const CLASSIFIED_SECTIONS: readonly ["need", "offer"]; export type ClassifiedSection = (typeof CLASSIFIED_SECTIONS)[number]; export declare const CLASSIFIED_CATEGORIES: readonly ["service", "competence", "material"]; export type ClassifiedCategory = (typeof CLASSIFIED_CATEGORIES)[number]; export interface ClassifiedSubcatEntry { key: string; label: string; icon: string; } export interface ClassifiedCategoryDef { key: ClassifiedCategory; icon: string; label: string; subcat: Record; } export declare const CLASSIFIED_SUBCATEGORIES: Record; export type ServiceSubcat = keyof typeof CLASSIFIED_SUBCATEGORIES.service.subcat; export type CompetenceSubcat = keyof typeof CLASSIFIED_SUBCATEGORIES.competence.subcat; export type MaterialSubcat = keyof typeof CLASSIFIED_SUBCATEGORIES.material.subcat; export type ClassifiedSubcat = ServiceSubcat | CompetenceSubcat | MaterialSubcat; export interface ClassifiedItemJson { _id: IdObject; collection: "classifieds"; name: string; section: ClassifiedSection; category: ClassifiedCategory; subtype: ClassifiedSubcat; created?: DateValue; updated?: DateValue; modified?: DateValue; parent?: ParentsMap; description?: string; slug?: string; address?: PostalAddress; geo?: GeoCoordinates; geoPosition?: GeoPosition; tags?: string[]; creator?: string; profilImageUrl?: string; profilMediumImageUrl?: string; profilThumbImageUrl?: string; [key: string]: unknown; } export interface ClassifiedItemNormalized { id: string; _id: ObjectID; collection: "classifieds"; name: string; section: ClassifiedSection; category: ClassifiedCategory; subtype: ClassifiedSubcat; created?: Date; updated?: Date; modified?: Date; parent?: ParentsMap; description?: string; slug?: string; address?: PostalAddress; geo?: GeoCoordinates; geoPosition?: GeoPosition; tags?: string[]; creator?: string; profilImageUrl?: string; profilMediumImageUrl?: string; profilThumbImageUrl?: string; [key: string]: unknown; } export {};