import { Platform } from '@angular/cdk/platform'; import { HttpClient, HttpResponse } from '@angular/common/http'; import { MtnaLogger } from '@mtna/core-angular'; import { RdsRegressionQuery } from '@rds/rds-base-ts'; import { DocumentOptionSet, OptionBundle, OptionSet, PackagingOptions } from '@rds/rds-packaging-ts'; import { RdsApiService, SelectParameters, TabulationParameters } from '@rds/shared-api'; import { Observable, ReplaySubject } from 'rxjs'; import * as i0 from "@angular/core"; export declare class RdsPackagingService { protected apiService: RdsApiService; private http; protected logger: MtnaLogger; protected platform: Platform; get PACKAGE_URL(): string; get DATA_PRODUCT_URL(): string; protected _bundlesCache$: ReplaySubject; protected _bundlesRequest$: Observable | undefined; protected _optionsCache$: ReplaySubject; protected _optionsRequest$: Observable | undefined; constructor(apiService: RdsApiService, http: HttpClient, logger: MtnaLogger, platform: Platform); downloadPackagedFile(processId: string): void; /** * Get bundle. When a client wants to get a particular bundle they can use this endpoint * to retrieve a list of OptionSets that are pre-configured to work with each other. * @param bundleId The ID of the bundle whose options are desired */ getBundle(bundleId: string): Observable; /** * Get all packaging bundles. * These are groups of related OptionSets grouped together with some pre-configuration already done. * This can ensure that users can get a set of options quickly and already set up with all the options needed. * @remarks This method uses caching, returns a hot observable. * @param refresh forces a cache refresh, will update all subscribers. Defaults to false. * @returns all packaging bundles */ getBundles(refresh?: boolean): Observable; getOption(formatId: string): Observable; /** * Get document packaging options. * * This provides a list of all the documents that are available to be included * in packaged output for the specified data product. * * These options can be used with any of the other methods of packaging (select, * tabulate, regression). */ getDataProductDocuments(): Observable; /** * Get all packaging options. * This is a starting point for clients to identify all the possible packaging formats that are available. * @remarks This method uses caching, returns a hot observable. * @param refresh forces a cache refresh, will update all subscribers. Defaults to false. * @returns all packaging options. */ getOptions(refresh?: boolean): Observable; getClassificationOptions(): Observable; getProcessDetails
(processId: string): Observable
; getPackagedFile(processId: string): Observable>; getPackageLimit(): Observable; /** * Package the classification. * This packages the classification in preparation for it to be downloaded. * @param classificationId The ID for the classification. * @param optionSets The available packaging options for the classification. * @returns a processId */ packageClassification(classificationId: string, optionSets: OptionSet[]): Observable; /** * Packages the regression. * @param params The query parameters of the calculated regression * @param optionSets The selected option set(s) for packaging * @returns And ID of the process in progress */ packageRegression(params: RdsRegressionQuery, optionSets: Array): Observable; select(params: SelectParameters, optionSets: OptionSet[]): Observable; /** * Package a tabulation. * * @param optionSets packaging format option sets * @param optionSets various tabulation parameters * @returns packaging ID */ tabulate(params: TabulationParameters, optionSets: Array): Observable; static ɵfac: i0.ɵɵFactoryDeclaration; static ɵprov: i0.ɵɵInjectableDeclaration; }