import { AuthenticationType, BaseProviderSystem, DestinationType, ProviderDestination, ProviderSystem, ProxyDestinationType, Service, ServiceCommon, ServiceRetriever } from "@sap/service-provider-apis"; import { UclPackageProviderSystem } from "../../src/providers/uclPackageProviderSystem"; import { UclSystemProviderSystem } from "../../src/providers/uclSystemProviderSystem"; export type RetrievePackagesOptions = { queryString?: string; }; export declare const PROVIDER_METHOD_GET = "get"; export interface UclServiceRetrieverInterface extends ServiceRetriever { retrieveSystems(): Promise; retrievePackages(systemId: string): Promise; retrieveApiPackages(systemId: string): Promise; } export interface UclSystemProviderSystemInterface extends ProviderSystem { id: string; localId: string; namespace: string | null; getPackages(): Promise; getApiPackages(): Promise; getEventPackages(): Promise; getDataProductsPackages(): Promise; } export interface DataProductProviderSystem extends BaseProviderSystem { getDataProducts(): Promise; getDataProductService(dataProduct: DataProduct): Promise; getDataProductServiceMetadata(dataProductService: DataProductService): Promise; } export interface DataProductRetriever { retrieveDataProductSystems(): Promise; retrieveDataProductsPackages(systemId: string): Promise; retrieveDataProducts(packageId: string): Promise; retrieveDataProductsFromSystem(systemId: string): Promise; retrieveDataProductService(systemId: string, dataProduct: DataProduct): Promise; retrieveDataProductServiceMetadata(dataProductService: DataProductService): Promise; } export interface DataProduct { id: string; name: string; description: string; ordId: string; version: string; releaseStatus: string; matchedServiceOrdId?: string; } export interface DataProductService extends Service { protocol: string; ordId: string; version: string; description: string; resourceDefinitions: MetadataUrlInfo[]; } export interface DataProductServiceMetadata extends ServiceCommon { data: string; } export interface RawSystem { title: string; id: string; description: string; productType: string; localId: string; systemNumber?: string; namespace: string; } export interface RawPackage { id: string; title: string; shortDescription: string; } export interface RawService { id: string; ordId: string; title: string; shortDescription: string; version: string; partOfConsumptionBundles: PartOfConsumptionBundles[]; entryPoints: ServiceUrl[]; resourceDefinitions: MetadataUrlInfo[]; consumptionBundles: RawConsumptionBundle[]; apiProtocol: string; releaseStatus: string; } export interface RawDataProduct { id: string; title: string; description: string; ordId: string; version: string; releaseStatus: string; outputPorts: { ordId: string; }[]; } export interface PartOfConsumptionBundles { bundleID: string; isDefaultBundle: boolean; } export interface ServiceUrl { value: string; } export interface MetadataUrlInfo { customType?: string; type: string; url: string; } export interface RawConsumptionBundle { title: string; ordId: string; id: string; correlationIds: CorrelationId[]; destinations?: RawUclDestination[]; } export interface RawUclDestination { name: string; sensitiveData: { destinationConfiguration: RawDestinationConfiguration; }; } export interface RawDestinationConfiguration { Authentication: AuthenticationType; ProxyType: ProxyDestinationType; Type: DestinationType; URL: string; } export interface RawSotItem { ordId: string; } export interface EntityTypeTarget { correlationId: string | null; ordId: string; } export interface RawEntityTypeMappings { apiModelSelectors: unknown[]; entityTypeTargets: EntityTypeTarget[]; id: string; } export interface ConsumptionBundleInterface { bundleId: string; bundleName: string; ordId: string; correlationIds: CorrelationId[]; destinations: ProviderDestination[]; } export interface CorrelationId { value: string; } export interface UclLandscape { url: string; landscapeEnvironment: LandscapeEnvironment; } export declare enum LandscapeEnvironment { Live = "live", Canary = "canary", Dev = "dev", Staging = "staging" } export declare enum ProtocolODataTypeRaw { v2 = "odata-v2", v4 = "odata-v4" } export interface SotFilters { sotValues?: string[]; expandConsumptionBundles?: boolean; }