scheunemann-interfaces
Version:
Interfaces de Projetos Scheunemann
62 lines (61 loc) • 1.64 kB
TypeScript
import { EIntervalType, ICarouselImage, IRating } from '../../general';
import { EOs } from '../../general/enums/os.enum';
import { EPlatform } from '../../general/enums/platform.enum';
import { EAppMode } from '../enums';
import { EAppCategory } from '../enums/app-category.enum';
import { EAppType } from '../enums/app-type.enum';
import { EAppHeaderType } from '../enums/header-type.enum';
export interface IApp {
active: boolean;
activeInstalls: number;
/**
* Indica se permite adicionar a assinatura
*/
allowAddSubscription: boolean;
carousel: ICarouselImage[];
categories: EAppCategory[];
createdBy: string;
description: string;
downloadUrl: string;
features: string[];
headerImage: string;
headerType: EAppHeaderType;
headerVideo: string;
isUnique: boolean;
iconUrl: string;
allowDefaultDevice: boolean;
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;
/**
* Indica se o app é gratuito ou não
*/
mode: EAppMode;
name: string;
os: EOs[];
platforms: EPlatform[];
price: number;
production: boolean;
secrets: string;
ratings: IRating[];
tags: string[];
totalInstalls: number;
trialTime: number;
type: EAppType;
versionCode: number;
versionName: string;
}