import { Shop } from "../../models/shop/shop.model";
import { AgencyClient } from "../../models/agency/agency-client.model";
import { Agency } from "../../models/agency/agency.model";
import { AgencyPlan } from "../../models/agency/agency-plan.model";
import { Domain } from "../../models/shop/domain/domain.model";
export declare const ShopLicense: {
    FREE: {
        code: string;
        name: string;
        wage_percent: number;
        wage_factor: number;
        icon: string;
        file_sell_percent: number;
        quota_multiple: number;
    };
    STARTUP: {
        code: string;
        name: string;
        wage_percent: number;
        wage_factor: number;
        icon: string;
        file_sell_percent: number;
        quota_multiple: number;
    };
    COMPANY: {
        code: string;
        name: string;
        wage_percent: number;
        wage_factor: number;
        icon: string;
        file_sell_percent: number;
        quota_multiple: number;
    };
    ENTERPRISE: {
        code: string;
        name: string;
        wage_percent: number;
        wage_factor: number;
        icon: string;
        file_sell_percent: number;
        quota_multiple: number;
    };
};
export declare const ShopLicenseLimits: {
    FREE: {
        domains: number;
        "discount-codes": number;
        coupons: number;
        offers: number;
        "gift-card-types": number;
        campaigns: number;
        affiliates: number;
        emails: number;
        lotteries: number;
        "transportation-persons": number;
        "importing-que": number;
        "importing-que-batch-size": number;
        reselling: boolean;
        "drop-shipping": boolean;
        "max-file-size": number;
        capacity: number;
        staff: number;
        community: boolean;
        "connects-count": number;
        marketplace: boolean;
        "tax-profiles": number;
        cashback: number;
        thresholdings: number;
        product_video_limit: number;
    };
    STARTUP: {
        domains: number;
        "discount-codes": number;
        coupons: number;
        offers: number;
        "gift-card-types": number;
        campaigns: number;
        affiliates: number;
        emails: number;
        lotteries: number;
        "transportation-persons": number;
        "importing-que": number;
        "importing-que-batch-size": number;
        reselling: boolean;
        "drop-shipping": boolean;
        "max-file-size": number;
        capacity: number;
        staff: number;
        community: boolean;
        "connects-count": number;
        marketplace: boolean;
        "tax-profiles": number;
        cashback: number;
        thresholdings: number;
        product_video_limit: number;
    };
    COMPANY: {
        domains: number;
        "discount-codes": number;
        coupons: number;
        offers: number;
        "gift-card-types": number;
        campaigns: number;
        affiliates: number;
        emails: number;
        lotteries: number;
        "transportation-persons": number;
        "importing-que": number;
        "importing-que-batch-size": number;
        reselling: boolean;
        "drop-shipping": boolean;
        "max-file-size": number;
        capacity: number;
        staff: number;
        community: boolean;
        "connects-count": number;
        marketplace: boolean;
        "tax-profiles": number;
        cashback: number;
        thresholdings: number;
        product_video_limit: number;
    };
    ENTERPRISE: {
        domains: number;
        "discount-codes": number;
        coupons: number;
        offers: number;
        "gift-card-types": number;
        campaigns: number;
        affiliates: number;
        emails: number;
        lotteries: number;
        "transportation-persons": number;
        "importing-que": number;
        "importing-que-batch-size": number;
        reselling: boolean;
        "drop-shipping": boolean;
        "max-file-size": number;
        capacity: number;
        staff: number;
        community: boolean;
        "connects-count": number;
        marketplace: boolean;
        "tax-profiles": number;
        cashback: number;
        thresholdings: number;
        product_video_limit: number;
    };
};
export declare class Eligible {
    static CanAddNewDomain(shop: Shop & {
        domains: Domain[];
    }): boolean;
    static CanEditDomain(shop: Shop & {
        domains: Domain[];
    }, domain_id: number): boolean;
    static DomainsLimit(shop: Shop & {
        agency_client?: AgencyClient & {
            agency?: Agency;
            plan?: AgencyPlan;
        };
    }): number;
    static CanAddNewStaff(shop: Shop, staff_count: number): boolean;
    static CanEditStaff(shop: Shop, staff_count: number): boolean;
    static StaffLimit(shop: Shop & {
        agency_client?: AgencyClient & {
            agency?: Agency;
            plan?: AgencyPlan;
        };
    }): number;
    static CanAddNewDiscountCode(shop: Shop, discount_codes_count: number): boolean;
    static CanEditDiscountCode(shop: Shop, discount_codes_count: number): boolean;
    static CanAddNewCoupon(shop: Shop, coupons_count: number): boolean;
    static CanEditCoupon(shop: Shop, coupons_count: number): boolean;
    static CanAddNewOffer(shop: Shop, offers_count: number): boolean;
    static CanEditOffer(shop: Shop, offers_count: number): boolean;
    static CanAddNewGiftCardType(shop: Shop, gift_card_types_count: number): boolean;
    static CanEditGiftCardType(shop: Shop, gift_card_types_count: number): boolean;
    static CanAddNewThresholding(shop: Shop, thresholdings_count: number): boolean;
    static CanEditThresholding(shop: Shop, thresholdings_count: number): boolean;
    static CanAddNewCampaign(shop: Shop, campaigns_count: number): boolean;
    static CanEditCampaign(shop: Shop, campaigns_count: number): boolean;
    static CanAddNewAffiliate(shop: Shop, affiliates_count: number): boolean;
    static CanEditAffiliate(shop: Shop, affiliates_count: number): boolean;
    static CanAddNewEmail(shop: Shop, emails_count: number): boolean;
    static CanEditEmail(shop: Shop, emails_count: number): boolean;
    static CanAdd3DModel(shop: Shop): boolean;
    static CanAddNewLottery(shop: Shop, lotteries_count: number): boolean;
    static CanEditLottery(shop: Shop, lotteries_count: number): boolean;
    static CanAddNewTransportationPerson(shop: Shop, transportation_persons_count: number): boolean;
    static CanEditTransportationPerson(shop: Shop, transportation_persons_count: number): boolean;
    static getImportQueLimit(shop: Shop): number;
    static getMaxImportProductsBatchSize(shop: Shop): number;
    static CanDropShip(shop: Shop): boolean | undefined;
    static CanReselling(shop: Shop): boolean;
    static GetFileUploadLimitMB(shop: Shop): number;
    static GetMaxCapacityMB(shop: Shop): number;
    static CanAddNewConnect(shop: Shop, connects_count: number): boolean;
    static CanAddTaxProfile(shop: Shop, profiles_count: number): boolean;
    static GetTaxProfilesLimit(shop: Shop): number;
    static CanAddNewCashback(shop: Shop, cashbacks_count: number): boolean;
    static CanEditCashback(shop: Shop, cashbacks_count: number): boolean;
    static MaxUploadVideosForProduct(shop: Shop): number;
}
