import { CarouselImageEntity, EIntervalType, RatingEntity } from '../../general';
import { EOs } from '../../general/enums/os.enum';
import { EPlatform } from '../../general/enums/platform.enum';
import { EAppCategory } from '../enums/app-category.enum';
import { EAppType } from '../enums/app-type.enum';
import { EAppHeaderType } from '../enums/header-type.enum';
import { EAppMode } from '../enums/mode.enum';
import { IApp } from '../interfaces/i-app';
export declare class AppEntity implements IApp {
    active: boolean;
    activeInstalls: number;
    /**
     * Indica se permite adicionar a assinatura
     */
    allowAddSubscription: boolean;
    allowDefaultDevice: boolean;
    carousel: CarouselImageEntity[];
    categories: EAppCategory[];
    createdBy: string;
    description: string;
    downloadUrl: string;
    features: string[];
    headerImage: string;
    headerType: EAppHeaderType;
    headerVideo: string;
    iconUrl: string;
    id: string;
    instanceNumberAllowed: number;
    /**
     * Intervalo de tempo para o preço
     * @example
     * 1, 2, 3, 4, 5, 6, 7, 8, 9, 10
     * Para intervalType = MONTHS
     * 1 = 1 mês (mensal)
     *
     */
    interval: number;
    /**
     * Tipo de intervalo para o preço
     * @example
     * Mensal, Semanal, Diário
     */
    intervalType: EIntervalType;
    isUnique: boolean;
    mode: EAppMode;
    name: string;
    /**
     * Indica se o app é gratuito ou não
     */
    os: EOs[];
    platforms: EPlatform[];
    price: number;
    production: boolean;
    ratings: RatingEntity[];
    secrets: string;
    tags: string[];
    totalInstalls: number;
    trialTime: number;
    type: EAppType;
    versionCode: number;
    versionName: string;
    constructor(data?: Partial<AppEntity>);
}
