import { TextAndLang } from './common'; import { DataStatus, DataVerificationStatus, Entity, EntityDetails } from './entity'; export declare enum SalesChannelTypes { MOBILE_APP = "mobile_app", WEBSITE = "website", CALL_CENTER = "call_center", PHYSICAL_STORE = "physical_store", SOCIAL_MEDIA = "social_media", IOS = "ios", ANDROID = "android", LINKEDIN = "linkedin", INSTAGRAM = "instagram", TWITTER = "twitter" } export interface Channel { id: string; code: SalesChannelTypes; name: Record; address?: string; logo: string; sub?: Channel[]; parentId?: string; channel?: string; } export type BrandStatus = 'Active' | 'InActive' | 'Reviewed' | 'Verified' | 'Expired' | 'Archived' | 'Closed'; export type BrandDataState = 'reviewed' | 'verified' | 'rejected' | 'completed' | 'incomplete' | 'complete'; export interface Brand { id: string; status: BrandStatus; created: number; name: TextAndLang[]; logo: string; entities: (EntityDetails & Entity)[]; business_id: string; } export interface BrandSegmentItem { id: string; name: Record; } export interface BrandTerm { term: string; agree: boolean; agreed_at: number; } export interface BrandTermByInfo { id: string; type: string; names: Record; created: string; is_authorized: boolean; } export interface BrandBusinessVolume { id: string; indicator: { type: string; }; name: Array<{ currency: string; ar?: string; en?: string; }>; } export interface BrandDataStatus { status: DataStatus; operations: { business_start_date: DataStatus; sales_range: DataStatus; customer_base: DataStatus; customer_base_location: DataStatus; }; terms: DataStatus; logo: DataStatus; segment: { type?: DataStatus; teams?: DataStatus; sale?: DataStatus; location_type?: DataStatus; profit_type?: DataStatus; tech_type?: DataStatus; }; name: { ar?: DataStatus; en?: DataStatus; textId?: DataStatus; }; activities: DataStatus; channel_services: DataStatus; } export interface BrandDataVerification { status: DataVerificationStatus; operations: { business_start_date: DataVerificationStatus; sales_range: DataVerificationStatus; customer_base: DataVerificationStatus; customer_base_location: DataVerificationStatus; }; terms: DataVerificationStatus; logo: DataVerificationStatus; segment: { type?: DataVerificationStatus; teams?: DataVerificationStatus; sale?: DataVerificationStatus; location_type?: DataVerificationStatus; profit_type?: DataVerificationStatus; tech_type?: DataVerificationStatus; }; name: { textId?: DataVerificationStatus; ar?: DataVerificationStatus; en?: DataVerificationStatus; }; activities: Record; channel_services: Record; } export interface BrandDetails { id: string; data_state: BrandDataState; status: BrandStatus; created: number; name: Record; logo: string; sector?: string[]; activities?: Array<{ id: string; code: string; name: Record; isic_code: string; mcc_value: { id: string; mcc: string; name: Record; description: string; created: number; }; }>; operations?: { sales?: { id: string; name: Record; period: string; currency: string; range: { from: number; to: number; }; sub: Array<{ id: string; name: Record; range: { from: number; to: number; }; }>; }; customer_base?: { id: string; name: Record; locations: Array<{ id: string; code: string; name: Record; }>; }; }; segment?: { team?: BrandSegmentItem; location_type?: BrandSegmentItem; profit_type?: BrandSegmentItem; tech_type?: BrandSegmentItem; }; terms?: BrandTerm[]; business_id: string; channel_services?: Channel[]; data_status?: BrandDataStatus; data_verification?: BrandDataVerification; term_by_info?: BrandTermByInfo; business_volume?: BrandBusinessVolume; }