@veloceapps/api 4.0.21-0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -0
- package/bundles/veloceapps-api.umd.js +2950 -0
- package/bundles/veloceapps-api.umd.js.map +1 -0
- package/esm2015/index.js +25 -0
- package/esm2015/lib/api.module.js +89 -0
- package/esm2015/lib/services/account-api.service.js +50 -0
- package/esm2015/lib/services/catalog-admin-api.service.js +159 -0
- package/esm2015/lib/services/catalog-api.service.js +90 -0
- package/esm2015/lib/services/configuration-api.service.js +73 -0
- package/esm2015/lib/services/configuration-settings-api.service.js +52 -0
- package/esm2015/lib/services/context-api.service.js +26 -0
- package/esm2015/lib/services/delta-api.service.js +27 -0
- package/esm2015/lib/services/document-attachment-api.service.js +66 -0
- package/esm2015/lib/services/document-templates-api.service.js +284 -0
- package/esm2015/lib/services/flows-api.service.js +24 -0
- package/esm2015/lib/services/picklists-api.service.js +38 -0
- package/esm2015/lib/services/price-api.service.js +63 -0
- package/esm2015/lib/services/procedures-api.service.js +93 -0
- package/esm2015/lib/services/product-api.service.js +153 -0
- package/esm2015/lib/services/product-model-api.service.js +232 -0
- package/esm2015/lib/services/quote-api.service.js +48 -0
- package/esm2015/lib/services/ramp-api.service.js +21 -0
- package/esm2015/lib/services/rule-groups-api.service.js +62 -0
- package/esm2015/lib/services/rules-api.service.js +81 -0
- package/esm2015/lib/services/salesforce-api.service.js +40 -0
- package/esm2015/lib/services/scripts-api.service.js +76 -0
- package/esm2015/lib/services/ui-templates-api.service.js +282 -0
- package/esm2015/lib/types/clone-request.types.js +2 -0
- package/esm2015/lib/types/delta-request.types.js +2 -0
- package/esm2015/lib/types/dto/attribute-dto.types.js +21 -0
- package/esm2015/lib/types/dto/charge-group-item-dto.types.js +49 -0
- package/esm2015/lib/types/dto/charge-item-dto.types.js +78 -0
- package/esm2015/lib/types/dto/configuration-dto.types.js +19 -0
- package/esm2015/lib/types/dto/configuration-settings-dto.types.js +22 -0
- package/esm2015/lib/types/dto/domain-type-dto.types.js +27 -0
- package/esm2015/lib/types/dto/line-item-dto.types.js +103 -0
- package/esm2015/lib/types/dto/port-domain-dto.types.js +22 -0
- package/esm2015/lib/types/dto/price-adjustment-dto.types.js +15 -0
- package/esm2015/lib/types/dto/price-dto.types.js +25 -0
- package/esm2015/lib/types/dto/recommended-price-dto.types.js +25 -0
- package/esm2015/lib/types/dto/ui-template-dto.types.js +2 -0
- package/esm2015/lib/types/index.js +5 -0
- package/esm2015/lib/types/price.types.js +2 -0
- package/esm2015/lib/types/ramp-request.types.js +2 -0
- package/esm2015/lib/types/search-request.types.js +2 -0
- package/esm2015/lib/utils/ui-template.utils.js +13 -0
- package/esm2015/veloceapps-api.js +5 -0
- package/fesm2015/veloceapps-api.js +2420 -0
- package/fesm2015/veloceapps-api.js.map +1 -0
- package/index.d.ts +24 -0
- package/lib/api.module.d.ts +7 -0
- package/lib/services/account-api.service.d.ts +22 -0
- package/lib/services/catalog-admin-api.service.d.ts +34 -0
- package/lib/services/catalog-api.service.d.ts +20 -0
- package/lib/services/configuration-api.service.d.ts +18 -0
- package/lib/services/configuration-settings-api.service.d.ts +17 -0
- package/lib/services/context-api.service.d.ts +11 -0
- package/lib/services/delta-api.service.d.ts +12 -0
- package/lib/services/document-attachment-api.service.d.ts +16 -0
- package/lib/services/document-templates-api.service.d.ts +47 -0
- package/lib/services/flows-api.service.d.ts +13 -0
- package/lib/services/picklists-api.service.d.ts +17 -0
- package/lib/services/price-api.service.d.ts +16 -0
- package/lib/services/procedures-api.service.d.ts +27 -0
- package/lib/services/product-api.service.d.ts +31 -0
- package/lib/services/product-model-api.service.d.ts +30 -0
- package/lib/services/quote-api.service.d.ts +25 -0
- package/lib/services/ramp-api.service.d.ts +13 -0
- package/lib/services/rule-groups-api.service.d.ts +18 -0
- package/lib/services/rules-api.service.d.ts +21 -0
- package/lib/services/salesforce-api.service.d.ts +17 -0
- package/lib/services/scripts-api.service.d.ts +21 -0
- package/lib/services/ui-templates-api.service.d.ts +49 -0
- package/lib/types/clone-request.types.d.ts +5 -0
- package/lib/types/delta-request.types.d.ts +5 -0
- package/lib/types/dto/attribute-dto.types.d.ts +11 -0
- package/lib/types/dto/charge-group-item-dto.types.d.ts +26 -0
- package/lib/types/dto/charge-item-dto.types.d.ts +41 -0
- package/lib/types/dto/configuration-dto.types.d.ts +18 -0
- package/lib/types/dto/configuration-settings-dto.types.d.ts +9 -0
- package/lib/types/dto/domain-type-dto.types.d.ts +15 -0
- package/lib/types/dto/line-item-dto.types.d.ts +55 -0
- package/lib/types/dto/port-domain-dto.types.d.ts +13 -0
- package/lib/types/dto/price-adjustment-dto.types.d.ts +8 -0
- package/lib/types/dto/price-dto.types.d.ts +13 -0
- package/lib/types/dto/recommended-price-dto.types.d.ts +14 -0
- package/lib/types/dto/ui-template-dto.types.d.ts +6 -0
- package/lib/types/index.d.ts +4 -0
- package/lib/types/price.types.d.ts +5 -0
- package/lib/types/ramp-request.types.d.ts +13 -0
- package/lib/types/search-request.types.d.ts +8 -0
- package/lib/utils/ui-template.utils.d.ts +3 -0
- package/package.json +37 -0
- package/veloceapps-api.d.ts +5 -0
@@ -0,0 +1,18 @@
|
|
1
|
+
import { BaseHttpService, ConfigurationRequest, ConfigurePrice, RuntimeData, RuntimeModel } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class ConfigurationApiService {
|
5
|
+
private httpService;
|
6
|
+
private readonly SERVICE_URL;
|
7
|
+
constructor(httpService: BaseHttpService);
|
8
|
+
configureLineItem({ configurationRequest, runtimeModel, pricingEnabled, }: {
|
9
|
+
configurationRequest: ConfigurationRequest;
|
10
|
+
runtimeModel?: RuntimeModel;
|
11
|
+
pricingEnabled?: boolean;
|
12
|
+
}): Observable<ConfigurePrice>;
|
13
|
+
getRuntimeDataByProductId(productId: string, offeringId?: string): Observable<RuntimeData>;
|
14
|
+
getRuntimeDataByModelId(modelId: string): Observable<RuntimeData>;
|
15
|
+
private updatePortDomains;
|
16
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ConfigurationApiService, never>;
|
17
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ConfigurationApiService>;
|
18
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { BaseHttpService, ConfigurationSettings, DataAdministrationField, HttpRequestConfigurableOptions } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class ConfigurationSettingsApiService {
|
5
|
+
private httpService;
|
6
|
+
private readonly SERVICE_URL;
|
7
|
+
constructor(httpService: BaseHttpService);
|
8
|
+
fetchSettings(options?: HttpRequestConfigurableOptions): Observable<ConfigurationSettings[]>;
|
9
|
+
fetchSetting(settingsKey: string, options?: HttpRequestConfigurableOptions): Observable<ConfigurationSettings | null>;
|
10
|
+
createSetting(setting: ConfigurationSettings, options?: HttpRequestConfigurableOptions): Observable<ConfigurationSettings>;
|
11
|
+
updateSetting(setting: ConfigurationSettings, options?: HttpRequestConfigurableOptions): Observable<ConfigurationSettings>;
|
12
|
+
removeSetting(setting: ConfigurationSettings, options?: HttpRequestConfigurableOptions): Observable<ConfigurationSettings>;
|
13
|
+
restoreSetting(settingId: string, options?: HttpRequestConfigurableOptions): Observable<any>;
|
14
|
+
clear(name: DataAdministrationField, options?: HttpRequestConfigurableOptions): Observable<void>;
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ConfigurationSettingsApiService, never>;
|
16
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ConfigurationSettingsApiService>;
|
17
|
+
}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { BaseHttpService, ConfigurationContext, ConfigurationContextMode } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class ContextApiService {
|
5
|
+
private httpService;
|
6
|
+
private readonly SERVICE_URL;
|
7
|
+
constructor(httpService: BaseHttpService);
|
8
|
+
getContext(headerId: string, mode: ConfigurationContextMode): Observable<ConfigurationContext>;
|
9
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ContextApiService, never>;
|
10
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ContextApiService>;
|
11
|
+
}
|
@@ -0,0 +1,12 @@
|
|
1
|
+
import { BaseHttpService, LineItem } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { CalculateDeltaRequest } from '../types/delta-request.types';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class DeltaApiService {
|
6
|
+
private httpService;
|
7
|
+
private readonly SERVICE_URL;
|
8
|
+
constructor(httpService: BaseHttpService);
|
9
|
+
calculate$(request: CalculateDeltaRequest): Observable<LineItem[]>;
|
10
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DeltaApiService, never>;
|
11
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<DeltaApiService>;
|
12
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { Attachment, BaseHttpService, FileDownloadService, TemplateAttachmentSearchRequest } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class DocumentAttachmentApiService {
|
5
|
+
private httpService;
|
6
|
+
private fileDownloadService;
|
7
|
+
private readonly SERVICE_URL;
|
8
|
+
constructor(httpService: BaseHttpService, fileDownloadService: FileDownloadService);
|
9
|
+
getAttachments(searchRequest: TemplateAttachmentSearchRequest): Observable<Attachment[]>;
|
10
|
+
createAttachment(attachment: Attachment, file?: File, reportProgress?: boolean): Observable<Attachment>;
|
11
|
+
updateAttachment(id: string, attachment: Attachment): Observable<Attachment>;
|
12
|
+
getAttachmentFile(id: string, isPreventDownload?: boolean): Observable<any>;
|
13
|
+
removeAttachment(id: string): Observable<unknown>;
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DocumentAttachmentApiService, never>;
|
15
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<DocumentAttachmentApiService>;
|
16
|
+
}
|
@@ -0,0 +1,47 @@
|
|
1
|
+
import { HttpClient } from '@angular/common/http';
|
2
|
+
import { Attachment, BaseHttpService, DocumentTemplate, FileDownloadService, TemplateAttachmentSearchRequest } from '@veloceapps/core';
|
3
|
+
import { Observable } from 'rxjs';
|
4
|
+
import { DocumentAttachmentApiService } from './document-attachment-api.service';
|
5
|
+
import { SalesforceApiService } from './salesforce-api.service';
|
6
|
+
import * as i0 from "@angular/core";
|
7
|
+
export interface DocumentGenerationParams {
|
8
|
+
attachToQuote?: boolean;
|
9
|
+
documentFormat?: 'DOCX';
|
10
|
+
shouldPreventDownload?: boolean;
|
11
|
+
}
|
12
|
+
export declare class DocumentTemplatesApiService {
|
13
|
+
private service;
|
14
|
+
private salesforceApiService;
|
15
|
+
private fileDownloadService;
|
16
|
+
private documentAttachmentService;
|
17
|
+
private http;
|
18
|
+
readonly DOCGEN_TAG = "docgen";
|
19
|
+
private readonly SERVICE_URL;
|
20
|
+
private readonly DOC_GEN_URL_FALLBACK;
|
21
|
+
private readonly DOC_GEN_URL;
|
22
|
+
constructor(service: BaseHttpService, salesforceApiService: SalesforceApiService, fileDownloadService: FileDownloadService, documentAttachmentService: DocumentAttachmentApiService, http: HttpClient);
|
23
|
+
getTemplates(tag?: string): Observable<DocumentTemplate[]>;
|
24
|
+
getTemplate(id: string): Observable<DocumentTemplate>;
|
25
|
+
upsertTemplate(template: DocumentTemplate, file?: File, reportProgress?: boolean): Observable<DocumentTemplate>;
|
26
|
+
removeTemplate(id: string): Observable<DocumentTemplate>;
|
27
|
+
restoreTemplate(id: string): Observable<void>;
|
28
|
+
cloneTemplate(id: string, propertiesToOverride?: Partial<DocumentTemplate>): Observable<{
|
29
|
+
clonedRecordId: string;
|
30
|
+
}>;
|
31
|
+
getTemplateFile(id: string): Observable<ArrayBuffer>;
|
32
|
+
downloadTemplateFile(id: string): Observable<Blob>;
|
33
|
+
mergeDocuments(document: Blob, attachments: ArrayBuffer[]): Observable<ArrayBuffer>;
|
34
|
+
getAttachments(searchRequest: TemplateAttachmentSearchRequest): Observable<Attachment[]>;
|
35
|
+
getAttachmentFile(id: string): any;
|
36
|
+
createAttachment(attachment: Attachment, file?: File, reportProgress?: boolean): Observable<Attachment>;
|
37
|
+
removeAttachment(id: string): Observable<unknown>;
|
38
|
+
generateDocumentData(template: DocumentTemplate, object: any, params?: DocumentGenerationParams): Observable<any>;
|
39
|
+
generateDocument(template: DocumentTemplate, object: any, params?: DocumentGenerationParams): Observable<Blob>;
|
40
|
+
private generateDocumentDataLegacy;
|
41
|
+
private resolveAttachments$;
|
42
|
+
private mapSfQueryResult;
|
43
|
+
private mapBooleanIfAplicable;
|
44
|
+
private queryObject;
|
45
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<DocumentTemplatesApiService, never>;
|
46
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<DocumentTemplatesApiService>;
|
47
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { Flow } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { ConfigurationSettingsApiService } from './configuration-settings-api.service';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class FlowsApiService {
|
6
|
+
private configurationSettingsApiService;
|
7
|
+
private readonly flowsKey;
|
8
|
+
constructor(configurationSettingsApiService: ConfigurationSettingsApiService);
|
9
|
+
getFlow(id: string): Observable<Flow | undefined>;
|
10
|
+
fetchFlows(): Observable<Flow[]>;
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<FlowsApiService, never>;
|
12
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<FlowsApiService>;
|
13
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { BaseHttpService, NewPicklist, NewPicklistValue, Picklist } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class PicklistsApiService {
|
5
|
+
private baseHttpService;
|
6
|
+
private readonly serviceUrl;
|
7
|
+
constructor(baseHttpService: BaseHttpService);
|
8
|
+
fetchAllPicklists$: () => Observable<Picklist[]>;
|
9
|
+
fetchPicklist$: (code: string) => Observable<Picklist>;
|
10
|
+
createPicklist$: (picklist: NewPicklist) => Observable<Picklist>;
|
11
|
+
updatePicklist$: (picklist: Picklist) => Observable<Picklist>;
|
12
|
+
removePicklist$: (id: string) => Observable<void>;
|
13
|
+
restorePicklist$: (id: string) => Observable<void>;
|
14
|
+
addPicklistValue$: (picklist: Picklist, value: NewPicklistValue) => Observable<Picklist>;
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PicklistsApiService, never>;
|
16
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PicklistsApiService>;
|
17
|
+
}
|
@@ -0,0 +1,16 @@
|
|
1
|
+
import { BaseHttpService, PriceList, PriceSummary } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { PriceCalculateRequest } from '../types/price.types';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class PriceApiService {
|
6
|
+
private httpService;
|
7
|
+
private readonly SERVICE_URL;
|
8
|
+
constructor(httpService: BaseHttpService);
|
9
|
+
calculate(request: PriceCalculateRequest): Observable<PriceSummary>;
|
10
|
+
getPriceLists(): Observable<PriceList[]>;
|
11
|
+
getPriceList(id: string): Observable<PriceList>;
|
12
|
+
getSellingTermByEndDate(planId?: string, offeringId?: string, startDate?: string, endDate?: string, frequencyUnit?: string, frequencyDuration?: string): Observable<any>;
|
13
|
+
getSellingTermByTerm(planId?: string, offeringId?: string, startDate?: string, term?: number, frequencyUnit?: string, frequencyDuration?: string): Observable<any>;
|
14
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<PriceApiService, never>;
|
15
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<PriceApiService>;
|
16
|
+
}
|
@@ -0,0 +1,27 @@
|
|
1
|
+
import { BaseHttpService, Expression, NewProcedure, Procedure, ProcedureExecuteRequest, QuoteDraft } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { CloneRequest } from '../types/clone-request.types';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class ProceduresApiService {
|
6
|
+
private baseHttpService;
|
7
|
+
private readonly ADMIN_SERVICE_URL;
|
8
|
+
private readonly SERVICE_URL;
|
9
|
+
constructor(baseHttpService: BaseHttpService);
|
10
|
+
fetchProcedures$: () => Observable<Procedure[]>;
|
11
|
+
searchProcedures$: (expression: Expression, skip: number, count: number) => Observable<Procedure[]>;
|
12
|
+
createProcedure$: (newProcedure: NewProcedure) => Observable<Procedure>;
|
13
|
+
updateProcedure$: (procedure: Procedure) => Observable<Procedure>;
|
14
|
+
duplicateProcedure$: (body: CloneRequest) => Observable<string>;
|
15
|
+
removeProcedure$: (id: string) => Observable<string>;
|
16
|
+
restoreProcedure$: (id: string) => Observable<string>;
|
17
|
+
fetchProcedure$(id: string): Observable<Procedure>;
|
18
|
+
execute$(body: ProcedureExecuteRequest): Observable<string[]>;
|
19
|
+
/**
|
20
|
+
* Run active procedure against QuoteDraft
|
21
|
+
* @param body
|
22
|
+
* @returns
|
23
|
+
*/
|
24
|
+
apply$(body: QuoteDraft): Observable<QuoteDraft>;
|
25
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ProceduresApiService, never>;
|
26
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ProceduresApiService>;
|
27
|
+
}
|
@@ -0,0 +1,31 @@
|
|
1
|
+
import { AttributeDefinition, BaseHttpService, Expression, LazyChunkRequest, NewAttributeDefinition, NewProduct, NewProductAttribute, Product, ProductAttribute } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class ProductApiService {
|
5
|
+
private baseHttpService;
|
6
|
+
private readonly serviceUrl;
|
7
|
+
constructor(baseHttpService: BaseHttpService);
|
8
|
+
fetchProducts$: (payload: LazyChunkRequest) => Observable<Product[]>;
|
9
|
+
searchProducts$: (expression: Expression, skip: number, count: number) => Observable<Product[]>;
|
10
|
+
fetchProduct$: (id: string) => Observable<Product>;
|
11
|
+
fetchAttributes$: () => Observable<AttributeDefinition[]>;
|
12
|
+
searchAttributes$: (expression: Expression, skip: number, count: number) => Observable<AttributeDefinition[]>;
|
13
|
+
fetchAttributesByModel: (modelId: string) => Observable<AttributeDefinition[]>;
|
14
|
+
createNewProduct$: (productData: NewProduct) => Observable<Product>;
|
15
|
+
updateProduct$: (body: Product) => Observable<Product>;
|
16
|
+
removeProduct$: (id: string) => Observable<string>;
|
17
|
+
restoreProduct$: (id: string) => Observable<void>;
|
18
|
+
createProductAttribute$: (attributeData: NewProductAttribute) => Observable<AttributeDefinition>;
|
19
|
+
updateProductAttribute$: (attributeData: ProductAttribute) => Observable<AttributeDefinition>;
|
20
|
+
removeProductAttribute$: (id: string) => Observable<void>;
|
21
|
+
createNewAttribute$: (attributeData: NewAttributeDefinition) => Observable<AttributeDefinition>;
|
22
|
+
updateAttribute$: (body: AttributeDefinition) => Observable<AttributeDefinition>;
|
23
|
+
removeAttribute$: (id: string) => Observable<void>;
|
24
|
+
restoreAttribute$: (id: string) => Observable<void>;
|
25
|
+
attachImage$(productId: string, file: File): Observable<void>;
|
26
|
+
removeImage$(productId: string): Observable<void>;
|
27
|
+
fetchImage$(productId: string): Observable<File>;
|
28
|
+
getImageUrl(productId: string): string;
|
29
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ProductApiService, never>;
|
30
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ProductApiService>;
|
31
|
+
}
|
@@ -0,0 +1,30 @@
|
|
1
|
+
import { BaseHttpService, ModelReleaseRequest, PmlConfigurationMode, ProductModel, ProductModelsContainer, ProductModelVersion } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import * as i0 from "@angular/core";
|
4
|
+
export declare class ProductModelApiService {
|
5
|
+
private httpService;
|
6
|
+
static MAX_RESULTS: number;
|
7
|
+
private readonly SERVICE_URL;
|
8
|
+
constructor(httpService: BaseHttpService);
|
9
|
+
addModel(model: ProductModel): Observable<any>;
|
10
|
+
releaseModel(model: ModelReleaseRequest): Observable<any>;
|
11
|
+
removeModel(modelId: string, successFn?: any, failureFn?: any): void;
|
12
|
+
getModelVersions(modelId: string, count?: number, skip?: number): Observable<ProductModelVersion[]>;
|
13
|
+
getModel(id: string, version?: string): Observable<ProductModel>;
|
14
|
+
getModels(skipCount: number, searchText: string): Observable<ProductModel[]>;
|
15
|
+
getLinkedModels(id: string, version?: string): Observable<ProductModel[]>;
|
16
|
+
load(id: string, version?: string): Observable<ProductModelsContainer>;
|
17
|
+
getPML(modelId: string, version?: string): Observable<any>;
|
18
|
+
savePML(modelId: string, pml: string, comment: string): Observable<any>;
|
19
|
+
generateProducts(modelId: string): Observable<ProductModel>;
|
20
|
+
saveModel(productModel: ProductModel, comment: string): Observable<string>;
|
21
|
+
validateModel(productModel: ProductModel): Observable<string>;
|
22
|
+
renameModel(productModel: ProductModel, name: string): Observable<any>;
|
23
|
+
uploadPmlFile(file: File, modelId: string): Observable<any>;
|
24
|
+
runPml(modelId: string, pml: string, rootType: string, configurationMode: PmlConfigurationMode): Observable<any>;
|
25
|
+
evictAllCache(): Observable<{
|
26
|
+
result: string;
|
27
|
+
}>;
|
28
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ProductModelApiService, never>;
|
29
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ProductModelApiService>;
|
30
|
+
}
|
@@ -0,0 +1,25 @@
|
|
1
|
+
import { BaseHttpService, HttpRequestConfigurableOptions, QuoteDraft } from '@veloceapps/core';
|
2
|
+
import { Dictionary } from 'lodash';
|
3
|
+
import { Observable } from 'rxjs';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class QuoteApiService {
|
6
|
+
private httpService;
|
7
|
+
private readonly SERVICE_URL;
|
8
|
+
constructor(httpService: BaseHttpService);
|
9
|
+
getQuoteDraft(objectId: string, params?: Dictionary<string>, errorHandler?: (error: any) => void): Observable<QuoteDraft>;
|
10
|
+
/**
|
11
|
+
* @deprecated
|
12
|
+
* Will be removed in next major release
|
13
|
+
* Use `getQuoteDraft` instead
|
14
|
+
*/
|
15
|
+
getQuote: (objectId: string, params?: Dictionary<string> | undefined, errorHandler?: ((error: any) => void) | undefined) => Observable<QuoteDraft>;
|
16
|
+
upsertQuote(request: QuoteDraft, options?: HttpRequestConfigurableOptions): Observable<{
|
17
|
+
quoteId: string;
|
18
|
+
}>;
|
19
|
+
submitQuote(request: QuoteDraft, options?: HttpRequestConfigurableOptions): Observable<{
|
20
|
+
quoteId: string;
|
21
|
+
}>;
|
22
|
+
attachDocument(id: string, documentName: string, data: any): Observable<void>;
|
23
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<QuoteApiService, never>;
|
24
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<QuoteApiService>;
|
25
|
+
}
|
@@ -0,0 +1,13 @@
|
|
1
|
+
import { BaseHttpService, HttpRequestConfigurableOptions, PriceSummary } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { NextRampRequest, RenewRampRequest } from '../types';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class RampApiService {
|
6
|
+
private httpService;
|
7
|
+
private readonly SERVICE_URL;
|
8
|
+
constructor(httpService: BaseHttpService);
|
9
|
+
next(request: NextRampRequest, options?: HttpRequestConfigurableOptions): Observable<PriceSummary>;
|
10
|
+
renew(request: RenewRampRequest, options?: HttpRequestConfigurableOptions): Observable<PriceSummary>;
|
11
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RampApiService, never>;
|
12
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<RampApiService>;
|
13
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { BaseHttpService, Expression, NewRuleGroup, RuleGroup } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { CloneRequest } from '../types/clone-request.types';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class RuleGroupsApiService {
|
6
|
+
private baseHttpService;
|
7
|
+
private readonly serviceUrl;
|
8
|
+
constructor(baseHttpService: BaseHttpService);
|
9
|
+
fetchRuleGroups$: () => Observable<RuleGroup[]>;
|
10
|
+
searchRuleGroups$: (expression: Expression, skip: number, count: number) => Observable<RuleGroup[]>;
|
11
|
+
createRuleGroup$: (ruleGroup: NewRuleGroup) => Observable<RuleGroup>;
|
12
|
+
updateRuleGroup$: (ruleGroup: RuleGroup) => Observable<RuleGroup>;
|
13
|
+
duplicateRuleGroup$: (body: CloneRequest) => Observable<string>;
|
14
|
+
removeRuleGroup$: (id: string) => Observable<string>;
|
15
|
+
restoreRuleGroup$: (id: string) => Observable<string>;
|
16
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RuleGroupsApiService, never>;
|
17
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<RuleGroupsApiService>;
|
18
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { BaseHttpService, Expression, HeaderField, NewRule, Rule, RuleExecuteRequest } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { CloneRequest } from '../types/clone-request.types';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class RulesApiService {
|
6
|
+
private baseHttpService;
|
7
|
+
private readonly serviceUrl;
|
8
|
+
constructor(baseHttpService: BaseHttpService);
|
9
|
+
fetchRules$: () => Observable<Rule[]>;
|
10
|
+
searchRules$: (expression: Expression, skip: number, count: number) => Observable<Rule[]>;
|
11
|
+
createRule$: (rule: NewRule) => Observable<Rule>;
|
12
|
+
updateRule$: (rule: Rule) => Observable<Rule>;
|
13
|
+
duplicateRule$: (body: CloneRequest) => Observable<string>;
|
14
|
+
removeRule$: (id: string) => Observable<string>;
|
15
|
+
restoreRule$: (id: string) => Observable<string>;
|
16
|
+
fetchRule$(id: string): Observable<Rule>;
|
17
|
+
fetchHeaderFields$(): Observable<HeaderField[]>;
|
18
|
+
execute$(body: RuleExecuteRequest): Observable<string[]>;
|
19
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<RulesApiService, never>;
|
20
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<RulesApiService>;
|
21
|
+
}
|
@@ -0,0 +1,17 @@
|
|
1
|
+
import { HttpParams } from '@angular/common/http';
|
2
|
+
import { BaseHttpService, HttpRequestConfigurableOptions, SalesforceField, SalesforceObject, SearchRequest } from '@veloceapps/core';
|
3
|
+
import { Observable } from 'rxjs';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class SalesforceApiService {
|
6
|
+
private httpService;
|
7
|
+
private readonly SERVICE_URL;
|
8
|
+
constructor(httpService: BaseHttpService);
|
9
|
+
query<T>(searchRequest: SearchRequest, objectName: string, options?: HttpRequestConfigurableOptions): Observable<T[]>;
|
10
|
+
queryObjects(search?: string, options?: HttpRequestConfigurableOptions): Observable<SalesforceObject[]>;
|
11
|
+
describe(objectName: string, fieldName?: string, options?: HttpRequestConfigurableOptions): Observable<SalesforceField[]>;
|
12
|
+
describe2<T>(objectName: string, fields: string[], options?: HttpRequestConfigurableOptions): Observable<T>;
|
13
|
+
apexGetRequest<T>(path: string, params: HttpParams, options?: HttpRequestConfigurableOptions): Observable<T>;
|
14
|
+
apexPostRequest<T, S>(path: string, body: S, options?: HttpRequestConfigurableOptions): Observable<T>;
|
15
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<SalesforceApiService, never>;
|
16
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<SalesforceApiService>;
|
17
|
+
}
|
@@ -0,0 +1,21 @@
|
|
1
|
+
import { BaseHttpService, Expression, NewScript, Script, ScriptDetails, ScriptExecuteRequest } from '@veloceapps/core';
|
2
|
+
import { Observable } from 'rxjs';
|
3
|
+
import { CloneRequest } from '../types/clone-request.types';
|
4
|
+
import * as i0 from "@angular/core";
|
5
|
+
export declare class ScriptsApiService {
|
6
|
+
private baseHttpService;
|
7
|
+
private readonly serviceUrl;
|
8
|
+
constructor(baseHttpService: BaseHttpService);
|
9
|
+
fetchScripts$: () => Observable<Script[]>;
|
10
|
+
searchScripts$: (expression: Expression, skip: number, count: number) => Observable<Script[]>;
|
11
|
+
fetchScript$: (id: string) => Observable<ScriptDetails>;
|
12
|
+
createScript$: (script: NewScript) => Observable<Script>;
|
13
|
+
updateScriptMeta$: (script: Script) => Observable<Script>;
|
14
|
+
updateScriptDetails$: (script: ScriptDetails) => Observable<ScriptDetails>;
|
15
|
+
cloneScript$: (cloneRequest: CloneRequest) => Observable<string>;
|
16
|
+
removeScript$: (id: string) => Observable<string>;
|
17
|
+
restoreScript$: (id: string) => Observable<string>;
|
18
|
+
execute$: (body: ScriptExecuteRequest) => Observable<any>;
|
19
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ScriptsApiService, never>;
|
20
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ScriptsApiService>;
|
21
|
+
}
|
@@ -0,0 +1,49 @@
|
|
1
|
+
import { BaseHttpService, ComponentAttachments, ComponentStory, ComponentStoryAttachments, Expression, NewComponentStory, NewTemplateComponent, NewUITemplate, TemplateAttachmentType, TemplateComponent, UITemplate } from '@veloceapps/core';
|
2
|
+
import { Dictionary } from 'lodash';
|
3
|
+
import { Observable } from 'rxjs';
|
4
|
+
import { CloneRequest } from '../types/clone-request.types';
|
5
|
+
import * as i0 from "@angular/core";
|
6
|
+
export declare class UITemplatesApiService {
|
7
|
+
private baseHttpService;
|
8
|
+
private readonly serviceUrl;
|
9
|
+
constructor(baseHttpService: BaseHttpService);
|
10
|
+
fetchTemplates$: (name?: string | undefined) => Observable<UITemplate[]>;
|
11
|
+
createTemplate$: (template: NewUITemplate) => Observable<UITemplate>;
|
12
|
+
updateTemplate$: (template: UITemplate) => Observable<UITemplate>;
|
13
|
+
duplicateTemplate$: (template: UITemplate, cloneRequest: CloneRequest) => Observable<string>;
|
14
|
+
removeTemplate$: (id: string) => Observable<void>;
|
15
|
+
restoreTemplate$: (id: string) => Observable<void>;
|
16
|
+
searchTemplates$: (data: {
|
17
|
+
params?: Dictionary<string>;
|
18
|
+
expression?: Expression;
|
19
|
+
}) => Observable<UITemplate[]>;
|
20
|
+
fetchComponents$: (templateId: string, name?: string | undefined) => Observable<TemplateComponent[]>;
|
21
|
+
fetchComponent$: (templateId: string, componentId: string) => Observable<TemplateComponent>;
|
22
|
+
createComponent$: (component: NewTemplateComponent) => Observable<TemplateComponent>;
|
23
|
+
updateComponent$: (component: TemplateComponent) => Observable<TemplateComponent>;
|
24
|
+
duplicateComponent$: (component: TemplateComponent, cloneRequest: CloneRequest) => Observable<string>;
|
25
|
+
removeComponent$: (templateId: string, componentId: string) => Observable<void>;
|
26
|
+
restoreComponent$: (templateId: string, componentId: string) => Observable<void>;
|
27
|
+
searchComponents$: (templateId: string, data: {
|
28
|
+
params?: Dictionary<string>;
|
29
|
+
expression?: Expression;
|
30
|
+
}) => Observable<TemplateComponent[]>;
|
31
|
+
fetchStoryAttachment: (templateId: string, componentId: string, storyId: string, type: TemplateAttachmentType) => Observable<string>;
|
32
|
+
private convertToComponentStory$;
|
33
|
+
fetchStories$: (templateId: string, componentId: string, name?: string | undefined) => Observable<ComponentStory[]>;
|
34
|
+
fetchStory$: (templateId: string, componentId: string, storyId: string) => Observable<ComponentStory>;
|
35
|
+
createComponentStory$: (templateId: string, story: NewComponentStory) => Observable<ComponentStory>;
|
36
|
+
updateComponentStory$: (templateId: string, story: ComponentStory) => Observable<ComponentStory>;
|
37
|
+
duplicateComponentStory$: (story: ComponentStory, cloneRequest: CloneRequest) => Observable<string>;
|
38
|
+
deleteComponentStory$: (templateId: string, componentId: string, storyId: string) => Observable<void>;
|
39
|
+
restoreComponentStory$: (templateId: string, componentId: string, storyId: string) => Observable<void>;
|
40
|
+
uploadStoryAttachments$: (templateId: string, componentId: string, storyId: string, attachments: ComponentStoryAttachments) => Observable<void>;
|
41
|
+
getTemplateThumbnailUrl(templateId: string): string;
|
42
|
+
attachTemplateThumbnail$(templateId: string, file: File): Observable<any>;
|
43
|
+
removeTemplateThumbnail$(templateId: string): Observable<any>;
|
44
|
+
fetchComponentAttachments$: (templateId: string, component: TemplateComponent) => Observable<ComponentAttachments>;
|
45
|
+
private fetchComponentAttachmentFile$;
|
46
|
+
uploadComponentAttachments$: (templateId: string, componentId: string, attachments: ComponentAttachments) => Observable<void>;
|
47
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<UITemplatesApiService, never>;
|
48
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<UITemplatesApiService>;
|
49
|
+
}
|
@@ -0,0 +1,11 @@
|
|
1
|
+
import { Attribute } from '@veloceapps/core';
|
2
|
+
export declare class AttributeDTO {
|
3
|
+
name: string;
|
4
|
+
type: string;
|
5
|
+
value: any;
|
6
|
+
cfgStatus: string;
|
7
|
+
id?: string | undefined;
|
8
|
+
scale?: number | undefined;
|
9
|
+
static fromDTO(dto: AttributeDTO): Attribute;
|
10
|
+
constructor(name: string, type: string, value: any, cfgStatus: string, id?: string | undefined, scale?: number | undefined);
|
11
|
+
}
|
@@ -0,0 +1,26 @@
|
|
1
|
+
import { ChargeGroupItem } from '@veloceapps/core';
|
2
|
+
import { Dictionary } from 'lodash';
|
3
|
+
import { PriceAdjustmentDTO } from './price-adjustment-dto.types';
|
4
|
+
export declare class ChargeGroupItemDTO {
|
5
|
+
chargeType: string;
|
6
|
+
chargeMethod: string;
|
7
|
+
properties: Dictionary<string>;
|
8
|
+
id?: string | undefined;
|
9
|
+
chargeTypeDisplayValue?: string | undefined;
|
10
|
+
frequencyUnit?: string | undefined;
|
11
|
+
frequencyDuration?: number | undefined;
|
12
|
+
basePrice?: number | undefined;
|
13
|
+
currency?: string | undefined;
|
14
|
+
sellingTerm?: number | undefined;
|
15
|
+
netPrice?: number | undefined;
|
16
|
+
listPrice?: number | undefined;
|
17
|
+
netUnitPrice?: number | undefined;
|
18
|
+
listUnitPrice?: number | undefined;
|
19
|
+
cost?: number | undefined;
|
20
|
+
priceAdjustment?: PriceAdjustmentDTO | undefined;
|
21
|
+
priceWaterfalls?: PriceAdjustmentDTO[] | undefined;
|
22
|
+
priceAdjustmentEnabled?: boolean | undefined;
|
23
|
+
listPriceAdjustmentEnabled?: boolean | undefined;
|
24
|
+
static fromDTO(dto: ChargeGroupItemDTO): ChargeGroupItem;
|
25
|
+
constructor(chargeType: string, chargeMethod: string, properties: Dictionary<string>, id?: string | undefined, chargeTypeDisplayValue?: string | undefined, frequencyUnit?: string | undefined, frequencyDuration?: number | undefined, basePrice?: number | undefined, currency?: string | undefined, sellingTerm?: number | undefined, netPrice?: number | undefined, listPrice?: number | undefined, netUnitPrice?: number | undefined, listUnitPrice?: number | undefined, cost?: number | undefined, priceAdjustment?: PriceAdjustmentDTO | undefined, priceWaterfalls?: PriceAdjustmentDTO[] | undefined, priceAdjustmentEnabled?: boolean | undefined, listPriceAdjustmentEnabled?: boolean | undefined);
|
26
|
+
}
|
@@ -0,0 +1,41 @@
|
|
1
|
+
import { ChargeItem, RequiresApproval } from '@veloceapps/core';
|
2
|
+
import { Dictionary } from 'lodash';
|
3
|
+
import { PriceAdjustmentDTO } from './price-adjustment-dto.types';
|
4
|
+
export declare class ChargeItemDTO {
|
5
|
+
id: string;
|
6
|
+
price: number;
|
7
|
+
unitPrice: number;
|
8
|
+
baseListPrice: number;
|
9
|
+
baseListUnitPrice: number;
|
10
|
+
listPrice: number;
|
11
|
+
listUnitPrice: number;
|
12
|
+
netPrice: number;
|
13
|
+
previousNetPrice: number;
|
14
|
+
netUnitPrice: number;
|
15
|
+
chargeId: string;
|
16
|
+
chargeType: string;
|
17
|
+
chargeMethod: string;
|
18
|
+
priceItemId: string;
|
19
|
+
startDate: string;
|
20
|
+
priceWaterfalls: PriceAdjustmentDTO[];
|
21
|
+
quantity: number;
|
22
|
+
properties: Dictionary<string>;
|
23
|
+
chargeTypeDisplayValue?: string | undefined;
|
24
|
+
arr?: number | undefined;
|
25
|
+
frequencyUnit?: string | undefined;
|
26
|
+
frequencyDuration?: number | undefined;
|
27
|
+
endDate?: string | undefined;
|
28
|
+
sellingTerm?: number | undefined;
|
29
|
+
currency?: string | undefined;
|
30
|
+
unitCost?: number | undefined;
|
31
|
+
cost?: number | undefined;
|
32
|
+
minUnitPrice?: number | undefined;
|
33
|
+
minPrice?: number | undefined;
|
34
|
+
enablePriceAdjustment?: boolean | undefined;
|
35
|
+
enableListPriceAdjustment?: boolean | undefined;
|
36
|
+
listPriceAdjustment?: PriceAdjustmentDTO | undefined;
|
37
|
+
priceAdjustment?: PriceAdjustmentDTO | undefined;
|
38
|
+
requiresApprovals?: RequiresApproval[] | undefined;
|
39
|
+
static fromDTO(dto: ChargeItemDTO): ChargeItem;
|
40
|
+
constructor(id: string, price: number, unitPrice: number, baseListPrice: number, baseListUnitPrice: number, listPrice: number, listUnitPrice: number, netPrice: number, previousNetPrice: number, netUnitPrice: number, chargeId: string, chargeType: string, chargeMethod: string, priceItemId: string, startDate: string, priceWaterfalls: PriceAdjustmentDTO[], quantity: number, properties: Dictionary<string>, chargeTypeDisplayValue?: string | undefined, arr?: number | undefined, frequencyUnit?: string | undefined, frequencyDuration?: number | undefined, endDate?: string | undefined, sellingTerm?: number | undefined, currency?: string | undefined, unitCost?: number | undefined, cost?: number | undefined, minUnitPrice?: number | undefined, minPrice?: number | undefined, enablePriceAdjustment?: boolean | undefined, enableListPriceAdjustment?: boolean | undefined, listPriceAdjustment?: PriceAdjustmentDTO | undefined, priceAdjustment?: PriceAdjustmentDTO | undefined, requiresApprovals?: RequiresApproval[] | undefined);
|
41
|
+
}
|
@@ -0,0 +1,18 @@
|
|
1
|
+
import { Charge, CompiledPricePlan, ConfigurationContext, ConfigurePrice } from '@veloceapps/core';
|
2
|
+
import { Dictionary } from 'lodash';
|
3
|
+
import { LineItemDTO } from './line-item-dto.types';
|
4
|
+
export interface ConfigurePriceDTO {
|
5
|
+
lineItem: LineItemDTO;
|
6
|
+
context: ConfigurationContext;
|
7
|
+
charges: Dictionary<Charge>;
|
8
|
+
pricePlans: Dictionary<CompiledPricePlan>;
|
9
|
+
deletedLineItems: LineItemDTO[];
|
10
|
+
}
|
11
|
+
export declare class ConfigurePriceDTO {
|
12
|
+
lineItem: LineItemDTO;
|
13
|
+
context: ConfigurationContext;
|
14
|
+
charges: Dictionary<Charge>;
|
15
|
+
pricePlans: Dictionary<CompiledPricePlan>;
|
16
|
+
static fromDTO(dto: ConfigurePriceDTO): ConfigurePrice;
|
17
|
+
constructor(lineItem: LineItemDTO, context: ConfigurationContext, charges: Dictionary<Charge>, pricePlans: Dictionary<CompiledPricePlan>);
|
18
|
+
}
|
@@ -0,0 +1,9 @@
|
|
1
|
+
import { ConfigurationSettings } from '@veloceapps/core';
|
2
|
+
export declare class ConfigurationSettingsDTO {
|
3
|
+
id: string;
|
4
|
+
key: string;
|
5
|
+
value: string;
|
6
|
+
static fromDTO(dto: ConfigurationSettingsDTO, key?: string): ConfigurationSettings;
|
7
|
+
static toDTO(data: ConfigurationSettings): ConfigurationSettingsDTO;
|
8
|
+
constructor(id: string, key: string, value: string);
|
9
|
+
}
|
@@ -0,0 +1,15 @@
|
|
1
|
+
import { DomainType } from '@veloceapps/core';
|
2
|
+
import { Dictionary } from 'lodash';
|
3
|
+
import { RecommendedPriceDTO } from './recommended-price-dto.types';
|
4
|
+
export declare class DomainTypeDTO {
|
5
|
+
name: string;
|
6
|
+
displayName: string;
|
7
|
+
minCard: number;
|
8
|
+
maxCard: number;
|
9
|
+
recommendedPrices?: RecommendedPriceDTO[] | undefined;
|
10
|
+
properties?: Dictionary<string> | undefined;
|
11
|
+
status?: string | undefined;
|
12
|
+
cardinality?: number | undefined;
|
13
|
+
static fromDTO(dto: DomainTypeDTO): DomainType;
|
14
|
+
constructor(name: string, displayName: string, minCard: number, maxCard: number, recommendedPrices?: RecommendedPriceDTO[] | undefined, properties?: Dictionary<string> | undefined, status?: string | undefined, cardinality?: number | undefined);
|
15
|
+
}
|