UNPKG

@experteam-mx/ngx-services

Version:

Angular common services for Experteam apps

126 lines (125 loc) 3.17 kB
import { ActiveLessSymfonyModel, ApiModel, SymfonyModel } from './api.models'; export interface Field extends ActiveLessSymfonyModel { name: string; label: string; level: string; dhlCodes: DhlCode[]; } export interface DhlCode extends ActiveLessSymfonyModel { code: string; customerCode: string; description: string; } export interface Override extends ApiModel { field: string; name: string; level: string; } export interface Catalog extends SymfonyModel { name: string; } export interface Rule extends SymfonyModel { ruleType: string; criteria: CriteriaCustom | null; name: string; description: string | null; level: string; roleTypes: string[]; warning: string | null; attributes: Attribute[]; } export interface CriteriaCustom extends ApiModel { origins: string[]; originGroups: string[]; originExclusions: string[]; destinations: string[]; destinationGroups: string[]; destinationExclusions: string[]; dutiable: boolean; declaredValue: null | { operator: number; }; } export interface Attribute extends ActiveLessSymfonyModel { field: FieldLess | null; dhlCode: DhlCodeLess | null; inputType: string; inputLabel: string; inputTooltip: string | null; exclusive: boolean; exclusiveDefault: boolean; required: boolean; text: TextConfig | null; dropdown: DropdownConfig | null; number: null | { min: number; max: number; }; dependentRules: DependentRules | null; fillFrom: FillFrom | null; override: Override | null; } export interface FieldLess extends ApiModel { name: string; label: string; } export interface TextConfig { minLength: number | null; maxLength: number | null; regex: string | null; alphaNumeric: string | null; placeHolder: string | null; format: string | null; prefix: string | null; suffix: string | null; masked: boolean; isFormat?: boolean; } export interface DropdownConfig extends Dropdown { catalog: CatalogLess | null | number; } export interface DependentRules { conditionType: string; ruleIds: number[]; } export interface FillFrom { attributeIndex: number; attributeId: number; using: string; disabled: boolean; } export interface CatalogLess extends ApiModel { name: string; isActive: boolean; } export interface CriteriaWithTimestamps { createdAt: string; updatedAt: string; } export interface CountryGroups extends ActiveLessSymfonyModel { code: string; name: string; countries: string[]; } export interface DhlCodeLess extends ApiModel { code: string; customerCode: string; description: string; } export interface RuleByCriteria extends ApiModel { ruleType: string; criteria: CriteriaCustom | null; name: string; description: string | null; level: string; roleTypes: string[]; } export interface Dropdown { values: string[]; catalogId: number; loadOnDemand: boolean; defaultValue: string | null; prefix: string | null; suffix: string | null; _catalogName?: string | null; }