import { IBusiness } from "./business.types";
export interface IDomainByBusinessId {
    _id: string;
    name: string;
    autoRenewal: boolean;
    businessId: string;
    duration: string;
    registrationDate: string;
    expiryDate: string;
    createdAt: string;
    updatedAt: string;
    __v: number;
}
export interface IPriceModification {
    modificationType: "Premium" | "Discount";
    amount: number;
}
interface MapLocation {
    latitude: number;
    longitude: number;
}
export type TGoldPriceData = {
    bid: number;
    ask: number;
    high: number;
    low: number;
    timestamp: number;
};
export type PriceField = "jewellery22k" | "gold9999Gm" | "tenTola" | "gold9999Kg" | "kilobar995" | "askPriceModification" | "bidPriceModification";
export type PriceModifications = Record<PriceField, IPriceModification>;
export interface Domain {
    name: string;
    registrar: "Identity" | "Other";
    dnsConfigured: boolean;
    vercelConfigured: boolean;
    _id: string;
}
export interface AppUrl {
    android: null;
    ios: null;
    _id: string;
}
export interface Status {
    android: string;
    ios: string;
}
interface IBase {
    _id: string;
    id: string;
    templateInfo: {
        _id: string;
        id: string;
        templateName: string;
        category: "Website";
        __v: 0;
    };
    status: string;
    isDeleted: boolean;
    createdAt: string;
    updatedAt: string;
    __v: number;
    businessInfo: IBusiness;
}
export interface IWebsite extends IBase, PriceModifications {
    domain: Domain;
}
export interface IMobileApps extends IBase, PriceModifications {
    appUrl: AppUrl;
}
export interface IGoogleBusiness {
    mapLocation: MapLocation;
    _id: string;
    businessId: string;
    businessName: string;
    businessDescription: string;
    photos: string[];
    businessCategory: string;
    address: string;
    phone: string;
    status: string;
    isDeleted: boolean;
    createdAt: string;
    updatedAt: string;
    __v: number;
    businessWebsite: string;
    businessStatus: string;
    businessRole: string;
    businessProfilePhoto: string;
    businessDocumentType: string;
    businessDocumentId: string;
    businessDocumentFront: string;
    businessDocumentBack: string;
    businessBid: string;
}
export interface ITemplate {
    _id: string;
    id: string;
    templateName: string;
    category: string;
    status: string;
    createdAt: string;
    updatedAt: string;
    __v: number;
}
export interface ITemplateProps {
    webInfo: IWebsite;
    goldPriceData?: TGoldPriceData[];
}
export {};
