import { ApiPageable } from 'sk-front-lib/api'; import { ISkArticle } from './article'; import { IAudit } from './audit'; import { ISkDocumentPublicList } from './document'; import { ISkFile } from './file'; import { SkProduct, SkProductListItem } from './product'; import { ISkPromotionPublicList } from './promotion'; import { ISkUser } from './user'; export interface SkOpengraph { ogAutoFill?: boolean; ogTitle?: string; ogDesc?: string; ogImage?: ISkFile; } export interface SkNaverEpEmbed { naverepShow?: boolean; naverepCustom?: boolean; naverepTitle?: string; naverepCategory?: string; } export interface SkCatalogEmbed { catalogShow?: boolean; catalogCustom?: boolean; catalogTitle?: string; catalogCategory?: number; } export declare enum SkValueType { Amount = "AMOUNT", Percent = "PERCENT", Fixed = "FIXED", Custom = "CUSTOM" } export declare enum SkGiftType { Real = "REAL", Custom = "CUSTOM" } export interface SkBrand { id?: number; title?: string; content?: string; showDistribution?: boolean; listOrder?: number; image?: ISkFile; opengraph?: SkOpengraph; selected?: boolean; disabled?: boolean; hidden?: boolean; } export declare enum SkCategoryType { Product = "PRODUCT", Promotion = "PROMOTION", Editorial = "EDITORIAL", Studio = "STUDIO", Board = "BOARD" } export interface SkSubCategoryItem { id?: number; title?: string; selected?: boolean; disabled?: boolean; hidden?: boolean; } export interface SkSubCategory { id?: number; title?: string; children?: SkSubCategoryItem[]; } export interface SkCategory { id?: number; title?: string; selected?: boolean; disabled?: boolean; hidden?: boolean; type?: SkCategoryType; subCategories?: SkSubCategory[]; opengraph?: SkOpengraph; } export interface SkKeyword { id?: number; title?: string; } export interface ISkAddress { id?: number; title?: string; receiverName?: string; email?: string; phone?: string; phone2?: string; zipCode?: string; address?: string; address2?: string; isDefault?: boolean; customsCode?: string; } export interface ISkStore { id?: number; name?: string; url?: string; address?: string; phone?: string; email?: string; mapKakaoUrl?: string; mapNaverUrl?: string; mapGoogleUrl?: string; mapEmbedUrl?: string; showDistribution?: boolean; brands?: SkBrand[]; } export declare class SkStore { id: number; name: string; url: string; address: string; phone: string; email: string; mapKakaoUrl: string; mapNaverUrl: string; mapGoogleUrl: string; mapEmbedUrl: string; showDistribution: boolean; brands: SkBrand[]; constructor(data?: ISkStore); } export interface ISkSearchResult { product?: ApiPageable; promotion?: ApiPageable; editorial?: ApiPageable; studio?: ApiPageable; etc?: ApiPageable; } export interface ISkSearchKeyword { id?: number; keyword?: string; } export interface ISkShippingFee { id?: number; zipCodeStart?: string; zipCodeEnd?: string; address?: string; fee?: number; } export interface ISkIdTitleValue { id?: number | string; title?: string; value?: string; } export interface SkBank { id?: number; name?: string; } export declare enum SkAffiliateRequestStatus { Wait = "WAIT", Approve = "APPROVE", Deny = "DENY" } export declare enum SkAffiliateTargetType { None = "NONE", All = "ALL", Brand = "BRAND", Category = "CATEGORY", Product = "PRODUCT" } export declare enum SkAffiliateTargetApply { Include = "INCLUDE", Exclude = "EXCLUDE" } export interface ISkAffiliateTarget { id?: number; type?: SkAffiliateTargetType; apply?: SkAffiliateTargetApply; orderIndex?: number; startDate?: string; endDate?: string; brand?: SkBrand; category?: SkCategory; products?: SkProduct[]; rebateAmount?: number; rebateType?: SkValueType; activated?: boolean; } export interface ISkAffiliateRequest extends IAudit { id: string; status: SkAffiliateRequestStatus; user: ISkUser; name: string; phoneNumber: string; social?: string; desc: ISkArticle; attachment?: ISkFile; denyReason?: string; } export interface ISkAffiliateStatsItem { date?: string; count?: number; sum?: number; sum2?: number; rank?: { id?: number; name?: string; count?: number; sum?: number; sum2?: number; }[]; } export interface ISkAffiliateRebateMonthly { id?: number; year?: number; month?: number; totalRebatePoint?: number; totalOrderCount?: number; totalProductView?: number; pointPaid?: boolean; paidDate?: boolean; } export interface ISkAffiliateStats { dailyProductView?: ISkAffiliateStatsItem[]; dailyPurchase?: ISkAffiliateStatsItem[]; monthlyProductView?: ISkAffiliateStatsItem[]; monthlyPurchase?: ISkAffiliateStatsItem[]; monthlyRebates?: ISkAffiliateRebateMonthly[]; }