@ibm-cloud/platform-services
Version:
Node.js client library for IBM Cloud Platform Services
755 lines • 329 kB
TypeScript
/**
* (C) Copyright IBM Corp. 2025.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
/// <reference types="node" />
/// <reference types="node" />
import { IncomingHttpHeaders, OutgoingHttpHeaders } from 'http';
import { BaseService, SDKLogger, UserOptions } from 'ibm-cloud-sdk-core';
/**
* This is the API to use for managing private catalogs for IBM Cloud. Private catalogs provide a way to centrally
* manage access to products in the IBM Cloud catalog and your own catalogs.
*
* API Version: 1.0
*/
declare class CatalogManagementV1 extends BaseService {
static _logger: SDKLogger;
static DEFAULT_SERVICE_URL: string;
static DEFAULT_SERVICE_NAME: string;
/*************************
* Factory method
************************/
/**
* Constructs an instance of CatalogManagementV1 with passed in options and external configuration.
*
* @param {UserOptions} [options] - The parameters to send to the service.
* @param {string} [options.serviceName] - The name of the service to configure
* @param {Authenticator} [options.authenticator] - The Authenticator object used to authenticate requests to the service
* @param {string} [options.serviceUrl] - The base URL for the service
* @returns {CatalogManagementV1}
*/
static newInstance(options: UserOptions): CatalogManagementV1;
/**
* Construct a CatalogManagementV1 object.
*
* @param {Object} options - Options for the service.
* @param {string} [options.serviceUrl] - The base URL for the service
* @param {OutgoingHttpHeaders} [options.headers] - Default headers that shall be included with every request to the service.
* @param {Authenticator} options.authenticator - The Authenticator object used to authenticate requests to the service
* @constructor
* @returns {CatalogManagementV1}
*/
constructor(options: UserOptions);
/*************************
* account
************************/
/**
* Get catalog account settings.
*
* Get the account level settings for the account for private catalog.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Account>>}
*/
getCatalogAccount(params?: CatalogManagementV1.GetCatalogAccountParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Account>>;
/**
* Update account settings.
*
* Update the account level settings for the account for private catalog.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {string} [params.id] - Account identification.
* @param {string} [params.rev] - Cloudant revision.
* @param {boolean} [params.hideIbmCloudCatalog] - Hide the public catalog in this account.
* @param {Filters} [params.accountFilters] - Filters for account and catalog filters.
* @param {string} [params.regionFilter] - Region filter string.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Account>>}
*/
updateCatalogAccount(params?: CatalogManagementV1.UpdateCatalogAccountParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Account>>;
/**
* Get catalog account audit logs.
*
* Get the audit logs associated with a catalog account.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>}
*/
listCatalogAccountAudits(params?: CatalogManagementV1.ListCatalogAccountAuditsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>;
/**
* Get a catalog account audit log entry.
*
* Get the full audit log entry associated with a catalog account.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.auditlogIdentifier - Auditlog ID.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>}
*/
getCatalogAccountAudit(params: CatalogManagementV1.GetCatalogAccountAuditParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>;
/**
* Get catalog account filters.
*
* Get the accumulated filters of the account and of the catalogs you have access to.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {string} [params.catalog] - catalog id. Narrow down filters to the account and just the one catalog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AccumulatedFilters>>}
*/
getCatalogAccountFilters(params?: CatalogManagementV1.GetCatalogAccountFiltersParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AccumulatedFilters>>;
/**
* Get share approval access list.
*
* Get the share approval access list associated with the specified object type.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.ShareApprovalListAccessResult>>}
*/
getShareApprovalList(params: CatalogManagementV1.GetShareApprovalListParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.ShareApprovalListAccessResult>>;
/**
* Delete share approval access.
*
* Delete share approval accesses associated with the specified object type.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string[]} params.accesses - A list of accesses to delete. An entry with star["*"] will remove all
* accesses.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>}
*/
deleteShareApprovalList(params: CatalogManagementV1.DeleteShareApprovalListParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>;
/**
* Add accesses to share approval access list.
*
* Add one or more accesses to the share approval access list for a specific object type.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string[]} params.accesses - A list of accesses to add.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>}
*/
addShareApprovalList(params: CatalogManagementV1.AddShareApprovalListParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>;
/**
* Get share approval access list for requesting accounts.
*
* Get the share approval access list associated with the specified object type in a certain approval state for
* requesting accounts.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string} params.approvalStateIdentifier - The different possible approval states for share requests or
* access request.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {string} [params.enterpriseId] - Execute the request in the context of an enterprise or enterpise account
* group ID. Use '-ent-enterpriseid' for an enterprise and '-entgrp-enterprisegroupid for an enterprise group.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.ShareApprovalListAccessResult>>}
*/
getShareApprovalListAsSource(params: CatalogManagementV1.GetShareApprovalListAsSourceParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.ShareApprovalListAccessResult>>;
/**
* Update approval states for share approval access list for requesting accounts.
*
* Update one or more access approval states from the share approval access list for a specific object type for
* requesting accounts.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.objectType - The type for the object.
* @param {string} params.approvalStateIdentifier - The different possible approval states for share requests or
* access request.
* @param {string[]} params.accesses - A list of accesses to update to the specified approval state.
* @param {string} [params.enterpriseId] - Execute the request in the context of an enterprise or enterpise account
* group ID. Use '-ent-enterpriseid' for an enterprise and '-entgrp-enterprisegroupid for an enterprise group.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>}
*/
updateShareApprovalListAsSource(params: CatalogManagementV1.UpdateShareApprovalListAsSourceParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AccessListBulkResponse>>;
/*************************
* catalogs
************************/
/**
* Get list of catalogs.
*
* Retrieves the available catalogs for a given account. This can be used by an unauthenticated user to retrieve the
* public catalog.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.CatalogSearchResult>>}
*/
listCatalogs(params?: CatalogManagementV1.ListCatalogsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.CatalogSearchResult>>;
/**
* Create a catalog.
*
* Create a catalog for a given account.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {string} [params.label] - Display Name in the requested language.
* @param {JsonObject} [params.labelI18n] - A map of translated strings, by language code.
* @param {string} [params.shortDescription] - Description in the requested language.
* @param {JsonObject} [params.shortDescriptionI18n] - A map of translated strings, by language code.
* @param {string} [params.catalogIconUrl] - URL for an icon associated with this catalog.
* @param {string} [params.catalogBannerUrl] - URL for a banner image for this catalog.
* @param {string[]} [params.tags] - List of tags associated with this catalog.
* @param {Feature[]} [params.features] - List of features associated with this catalog.
* @param {boolean} [params.disabled] - Denotes whether a catalog is disabled.
* @param {string} [params.resourceGroupId] - Resource group id the catalog is owned by.
* @param {string} [params.owningAccount] - Account that owns catalog.
* @param {Filters} [params.catalogFilters] - Filters for account and catalog filters.
* @param {string} [params.kind] - Kind of catalog. Supported kinds are offering and vpe.
* @param {JsonObject} [params.metadata] - Catalog specific metadata.
* @param {TargetAccountContext[]} [params.targetAccountContexts] - List of target accounts contexts on this catalog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>}
*/
createCatalog(params?: CatalogManagementV1.CreateCatalogParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>;
/**
* Get catalog.
*
* Get a catalog. This can also be used by an unauthenticated user to get the public catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>}
*/
getCatalog(params: CatalogManagementV1.GetCatalogParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>;
/**
* Update catalog.
*
* Update a catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} [params.id] - Unique ID.
* @param {string} [params.rev] - Cloudant revision.
* @param {string} [params.label] - Display Name in the requested language.
* @param {JsonObject} [params.labelI18n] - A map of translated strings, by language code.
* @param {string} [params.shortDescription] - Description in the requested language.
* @param {JsonObject} [params.shortDescriptionI18n] - A map of translated strings, by language code.
* @param {string} [params.catalogIconUrl] - URL for an icon associated with this catalog.
* @param {string} [params.catalogBannerUrl] - URL for a banner image for this catalog.
* @param {string[]} [params.tags] - List of tags associated with this catalog.
* @param {Feature[]} [params.features] - List of features associated with this catalog.
* @param {boolean} [params.disabled] - Denotes whether a catalog is disabled.
* @param {string} [params.resourceGroupId] - Resource group id the catalog is owned by.
* @param {string} [params.owningAccount] - Account that owns catalog.
* @param {Filters} [params.catalogFilters] - Filters for account and catalog filters.
* @param {string} [params.kind] - Kind of catalog. Supported kinds are offering and vpe.
* @param {JsonObject} [params.metadata] - Catalog specific metadata.
* @param {TargetAccountContext[]} [params.targetAccountContexts] - List of target accounts contexts on this catalog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>}
*/
replaceCatalog(params: CatalogManagementV1.ReplaceCatalogParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Catalog>>;
/**
* Delete catalog.
*
* Delete a catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>}
*/
deleteCatalog(params: CatalogManagementV1.DeleteCatalogParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>;
/**
* Get catalog audit logs.
*
* Get the audit logs associated with a catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>}
*/
listCatalogAudits(params: CatalogManagementV1.ListCatalogAuditsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>;
/**
* Get a catalog audit log entry.
*
* Get the full audit log entry associated with a catalog.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.auditlogIdentifier - Auditlog ID.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>}
*/
getCatalogAudit(params: CatalogManagementV1.GetCatalogAuditParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>;
/*************************
* enterprise
************************/
/**
* Get enterprise audit logs.
*
* Get the audit logs associated with an enterprise.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.enterpriseIdentifier - Enterprise ID.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>}
*/
listEnterpriseAudits(params: CatalogManagementV1.ListEnterpriseAuditsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>;
/**
* Get an enterprise audit log entry.
*
* Get the full audit log entry associated with an enterprise.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.enterpriseIdentifier - Enterprise ID.
* @param {string} params.auditlogIdentifier - Auditlog ID.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>}
*/
getEnterpriseAudit(params: CatalogManagementV1.GetEnterpriseAuditParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>;
/*************************
* offerings
************************/
/**
* Get consumption offerings.
*
* Retrieve the available offerings from both public and from the account that currently scoped for consumption. These
* copies cannot be used for updating. They are not complete and only return what is visible to the caller. This can
* be used by an unauthenticated user to retreive publicly available offerings.
*
* @param {Object} [params] - The parameters to send to the service.
* @param {boolean} [params.digest] - true - Strip down the content of what is returned. For example don't return the
* readme. Makes the result much smaller. Defaults to false.
* @param {string} [params.catalog] - catalog id. Narrow search down to just a particular catalog. It will apply the
* catalog's public filters to the public catalog offerings on the result.
* @param {string} [params.select] - What should be selected. Default is 'all' which will return both public and
* private offerings. 'public' returns only the public offerings and 'private' returns only the private offerings.
* @param {boolean} [params.includeHidden] - true - include offerings which have been marked as hidden. The default is
* false and hidden offerings are not returned.
* @param {number} [params.limit] - number or results to return.
* @param {number} [params.offset] - number of results to skip before returning values.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.OfferingSearchResult>>}
*/
getConsumptionOfferings(params?: CatalogManagementV1.GetConsumptionOfferingsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.OfferingSearchResult>>;
/**
* Get list of offerings.
*
* Retrieve the available offerings in the specified catalog. This can also be used by an unauthenticated user to
* retreive publicly available offerings.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {boolean} [params.digest] - true - Strip down the content of what is returned. For example don't return the
* readme. Makes the result much smaller. Defaults to false.
* @param {number} [params.limit] - The maximum number of results to return.
* @param {number} [params.offset] - The number of results to skip before returning values.
* @param {string} [params.name] - Only return results that contain the specified string.
* @param {string} [params.sort] - The field on which the output is sorted. Sorts by default by **label** property.
* Available fields are **name**, **label**, **created**, and **updated**. By adding **-** (i.e. **-label**) in front
* of the query string, you can specify descending order. Default is ascending order.
* @param {boolean} [params.includeHidden] - true - include offerings which have been marked as hidden. The default is
* true. To not return hidden offerings false must be explicitly set.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.OfferingSearchResult>>}
*/
listOfferings(params: CatalogManagementV1.ListOfferingsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.OfferingSearchResult>>;
/**
* Create offering.
*
* Create an offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} [params.url] - The url for this specific offering.
* @param {string} [params.crn] - The crn for this specific offering.
* @param {string} [params.label] - Display Name in the requested language.
* @param {JsonObject} [params.labelI18n] - A map of translated strings, by language code.
* @param {string} [params.name] - The programmatic name of this offering.
* @param {string} [params.offeringIconUrl] - URL for an icon associated with this offering.
* @param {string} [params.offeringDocsUrl] - URL for an additional docs with this offering.
* @param {string} [params.offeringSupportUrl] - [deprecated] - Use offering.support instead. URL to be displayed in
* the Consumption UI for getting support on this offering.
* @param {string[]} [params.tags] - List of tags associated with this catalog.
* @param {string[]} [params.keywords] - List of keywords associated with offering, typically used to search for it.
* @param {Rating} [params.rating] - Repository info for offerings.
* @param {string} [params.created] - The date and time this catalog was created.
* @param {string} [params.updated] - The date and time this catalog was last updated.
* @param {string} [params.shortDescription] - Short description in the requested language.
* @param {JsonObject} [params.shortDescriptionI18n] - A map of translated strings, by language code.
* @param {string} [params.longDescription] - Long description in the requested language.
* @param {JsonObject} [params.longDescriptionI18n] - A map of translated strings, by language code.
* @param {Feature[]} [params.features] - list of features associated with this offering.
* @param {Kind[]} [params.kinds] - Array of kind.
* @param {PublishObject} [params.publish] - Publish information.
* @param {boolean} [params.pcManaged] - Offering is managed by Partner Center.
* @param {boolean} [params.publishApproved] - Offering has been approved to publish to permitted to IBM or Public
* Catalog.
* @param {boolean} [params.shareWithAll] - Denotes public availability of an Offering.
* @param {boolean} [params.shareWithIbm] - Denotes IBM employee availability of an Offering - if share_enabled is
* true.
* @param {boolean} [params.shareEnabled] - Denotes sharing including access list availability of an Offering is
* enabled.
* @param {string} [params.publicOriginalCrn] - The original offering CRN that this publish entry came from.
* @param {string} [params.publishPublicCrn] - The crn of the public catalog entry of this offering.
* @param {string} [params.portalApprovalRecord] - The portal's approval record ID.
* @param {string} [params.portalUiUrl] - The portal UI URL.
* @param {string} [params.catalogId] - The id of the catalog containing this offering.
* @param {string} [params.catalogName] - The name of the catalog.
* @param {JsonObject} [params.metadata] - Map of metadata values for this offering.
* @param {string} [params.disclaimer] - A disclaimer for this offering.
* @param {boolean} [params.hidden] - Determine if this offering should be displayed in the Consumption UI.
* @param {string} [params.provider] - Deprecated: Deprecated - Provider of this offering.
* @param {ProviderInfo} [params.providerInfo] - Information on the provider for this offering, or omitted if no
* provider information is given.
* @param {RepoInfo} [params.repoInfo] - Repository info for offerings.
* @param {ImagePullKey[]} [params.imagePullKeys] - Image pull keys for this offering.
* @param {Support} [params.support] - Offering Support information.
* @param {MediaItem[]} [params.media] - A list of media items related to this offering.
* @param {DeprecatePending} [params.deprecatePending] - Deprecation information for an Offering.
* @param {string} [params.productKind] - The product kind. Valid values are module, solution, or empty string.
* @param {Badge[]} [params.badges] - A list of badges for this offering.
* @param {Plan[]} [params.plans] - A list of plans for this offering.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>}
*/
createOffering(params: CatalogManagementV1.CreateOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>;
/**
* Import offering version.
*
* Import new version to an offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string[]} [params.tags] - Tags array.
* @param {string[]} [params.keywords] - Keywords array.
* @param {string} [params.content] - Byte array representing the content to be imported. Only supported for OVA
* images at this time.
* @param {string} [params.name] - Name of version. Required for virtual server image for VPC.
* @param {string} [params.label] - Display name of version. Required for virtual server image for VPC.
* @param {string} [params.installKind] - Install type. Example: instance. Required for virtual server image for VPC.
* @param {string[]} [params.targetKinds] - Deployment target of the content being onboarded. Current valid values are
* iks, roks, vcenter, power-iaas, terraform, and vpc-x86. Required for virtual server image for VPC.
* @param {string} [params.formatKind] - Format of content being onboarded. Example: vsi-image. Required for virtual
* server image for VPC.
* @param {string} [params.productKind] - Optional product kind for the software being onboarded. Valid values are
* software, module, or solution. Default value is software.
* @param {string} [params.productKindLabel] - Display value for optional product kind for the software being
* onboarded.
* @param {string} [params.sha] - SHA256 fingerprint of the image file. Required for virtual server image for VPC.
* @param {string} [params.version] - Semantic version of the software being onboarded. Required for virtual server
* image for VPC.
* @param {Flavor} [params.flavor] - Version Flavor Information. Only supported for Product kind Solution.
* @param {ImportOfferingBodyMetadata} [params.metadata] - Generic data to be included with content being onboarded.
* Required for virtual server image for VPC.
* @param {string} [params.workingDirectory] - Optional - The sub-folder within the specified tgz file that contains
* the software being onboarded.
* @param {string} [params.installType] - The install type of the variation. Specify extension or fullstack.
* @param {string} [params.zipurl] - URL path to zip location. If not specified, must provide content in the body of
* this call.
* @param {string} [params.targetVersion] - The semver value for this new version, if not found in the zip url package
* content.
* @param {boolean} [params.includeConfig] - Add all possible configuration values to this version when importing.
* @param {boolean} [params.isVsi] - Indicates that the current terraform template is used to install a virtual server
* image.
* @param {string} [params.repotype] - The type of repository containing this version. Valid values are 'public_git'
* or 'enterprise_git'.
* @param {string} [params.xAuthToken] - Authentication token used to access the specified zip file.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>}
*/
importOfferingVersion(params: CatalogManagementV1.ImportOfferingVersionParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>;
/**
* Import offering.
*
* Import a new offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string[]} [params.tags] - Tags array.
* @param {string[]} [params.keywords] - Keywords array.
* @param {string} [params.content] - Byte array representing the content to be imported. Only supported for OVA
* images at this time.
* @param {string} [params.name] - Name of version. Required for virtual server image for VPC.
* @param {string} [params.label] - Display name of version. Required for virtual server image for VPC.
* @param {string} [params.installKind] - Install type. Example: instance. Required for virtual server image for VPC.
* @param {string[]} [params.targetKinds] - Deployment target of the content being onboarded. Current valid values are
* iks, roks, vcenter, power-iaas, terraform, and vpc-x86. Required for virtual server image for VPC.
* @param {string} [params.formatKind] - Format of content being onboarded. Example: vsi-image. Required for virtual
* server image for VPC.
* @param {string} [params.productKind] - Optional product kind for the software being onboarded. Valid values are
* software, module, or solution. Default value is software.
* @param {string} [params.productKindLabel] - Display value for optional product kind for the software being
* onboarded.
* @param {string} [params.sha] - SHA256 fingerprint of the image file. Required for virtual server image for VPC.
* @param {string} [params.version] - Semantic version of the software being onboarded. Required for virtual server
* image for VPC.
* @param {Flavor} [params.flavor] - Version Flavor Information. Only supported for Product kind Solution.
* @param {ImportOfferingBodyMetadata} [params.metadata] - Generic data to be included with content being onboarded.
* Required for virtual server image for VPC.
* @param {string} [params.workingDirectory] - Optional - The sub-folder within the specified tgz file that contains
* the software being onboarded.
* @param {string} [params.installType] - The install type of the variation. Specify extension or fullstack.
* @param {string} [params.zipurl] - URL path to zip location. If not specified, must provide content in this post
* body.
* @param {string} [params.offeringId] - Re-use the specified offeringID during import.
* @param {string} [params.targetVersion] - The semver value for this new version.
* @param {boolean} [params.includeConfig] - Add all possible configuration items when creating this version.
* @param {boolean} [params.isVsi] - Indicates that the current terraform template is used to install a virtual server
* image.
* @param {string} [params.repotype] - The type of repository containing this version. Valid values are 'public_git'
* or 'enterprise_git'.
* @param {string} [params.xAuthToken] - Authentication token used to access the specified zip file.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>}
*/
importOffering(params: CatalogManagementV1.ImportOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>;
/**
* Reload offering.
*
* Reload an existing version in offering from a tgz.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} params.targetVersion - The semver value for this new version.
* @param {string[]} [params.tags] - Tags array.
* @param {string} [params.content] - byte array representing the content to be imported. Only supported for OVA
* images at this time.
* @param {string[]} [params.targetKinds] - Target kinds. Current valid values are 'iks', 'roks', 'vcenter',
* 'power-iaas', and 'terraform'.
* @param {string} [params.formatKind] - Format of content being onboarded. Example: vsi-image. Required for virtual
* server image for VPC.
* @param {Flavor} [params.flavor] - Version Flavor Information. Only supported for Product kind Solution.
* @param {string} [params.workingDirectory] - Optional - The sub-folder within the specified tgz file that contains
* the software being onboarded.
* @param {string} [params.installType] - The install type of the current software being onboarded.
* @param {string} [params.zipurl] - URL path to zip location. If not specified, must provide content in this post
* body.
* @param {string} [params.repoType] - The type of repository containing this version. Valid values are 'public_git'
* or 'enterprise_git'.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>}
*/
reloadOffering(params: CatalogManagementV1.ReloadOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>;
/**
* Get offering.
*
* Get an offering. This can be used by an unauthenticated user for publicly available offerings.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} [params.type] - Offering Parameter Type. Valid values are 'name' or 'id'. Default is 'id'.
* @param {boolean} [params.digest] - Return the digest format of the specified offering. Default is false.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>}
*/
getOffering(params: CatalogManagementV1.GetOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>;
/**
* Update offering.
*
* Update an offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} [params.id] - unique id.
* @param {string} [params.rev] - Cloudant revision.
* @param {string} [params.url] - The url for this specific offering.
* @param {string} [params.crn] - The crn for this specific offering.
* @param {string} [params.label] - Display Name in the requested language.
* @param {JsonObject} [params.labelI18n] - A map of translated strings, by language code.
* @param {string} [params.name] - The programmatic name of this offering.
* @param {string} [params.offeringIconUrl] - URL for an icon associated with this offering.
* @param {string} [params.offeringDocsUrl] - URL for an additional docs with this offering.
* @param {string} [params.offeringSupportUrl] - [deprecated] - Use offering.support instead. URL to be displayed in
* the Consumption UI for getting support on this offering.
* @param {string[]} [params.tags] - List of tags associated with this catalog.
* @param {string[]} [params.keywords] - List of keywords associated with offering, typically used to search for it.
* @param {Rating} [params.rating] - Repository info for offerings.
* @param {string} [params.created] - The date and time this catalog was created.
* @param {string} [params.updated] - The date and time this catalog was last updated.
* @param {string} [params.shortDescription] - Short description in the requested language.
* @param {JsonObject} [params.shortDescriptionI18n] - A map of translated strings, by language code.
* @param {string} [params.longDescription] - Long description in the requested language.
* @param {JsonObject} [params.longDescriptionI18n] - A map of translated strings, by language code.
* @param {Feature[]} [params.features] - list of features associated with this offering.
* @param {Kind[]} [params.kinds] - Array of kind.
* @param {PublishObject} [params.publish] - Publish information.
* @param {boolean} [params.pcManaged] - Offering is managed by Partner Center.
* @param {boolean} [params.publishApproved] - Offering has been approved to publish to permitted to IBM or Public
* Catalog.
* @param {boolean} [params.shareWithAll] - Denotes public availability of an Offering.
* @param {boolean} [params.shareWithIbm] - Denotes IBM employee availability of an Offering - if share_enabled is
* true.
* @param {boolean} [params.shareEnabled] - Denotes sharing including access list availability of an Offering is
* enabled.
* @param {string} [params.publicOriginalCrn] - The original offering CRN that this publish entry came from.
* @param {string} [params.publishPublicCrn] - The crn of the public catalog entry of this offering.
* @param {string} [params.portalApprovalRecord] - The portal's approval record ID.
* @param {string} [params.portalUiUrl] - The portal UI URL.
* @param {string} [params.catalogId] - The id of the catalog containing this offering.
* @param {string} [params.catalogName] - The name of the catalog.
* @param {JsonObject} [params.metadata] - Map of metadata values for this offering.
* @param {string} [params.disclaimer] - A disclaimer for this offering.
* @param {boolean} [params.hidden] - Determine if this offering should be displayed in the Consumption UI.
* @param {string} [params.provider] - Deprecated: Deprecated - Provider of this offering.
* @param {ProviderInfo} [params.providerInfo] - Information on the provider for this offering, or omitted if no
* provider information is given.
* @param {RepoInfo} [params.repoInfo] - Repository info for offerings.
* @param {ImagePullKey[]} [params.imagePullKeys] - Image pull keys for this offering.
* @param {Support} [params.support] - Offering Support information.
* @param {MediaItem[]} [params.media] - A list of media items related to this offering.
* @param {DeprecatePending} [params.deprecatePending] - Deprecation information for an Offering.
* @param {string} [params.productKind] - The product kind. Valid values are module, solution, or empty string.
* @param {Badge[]} [params.badges] - A list of badges for this offering.
* @param {Plan[]} [params.plans] - A list of plans for this offering.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>}
*/
replaceOffering(params: CatalogManagementV1.ReplaceOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>;
/**
* Update offering.
*
* Update an offering using a JSONPatch document as defined by RFC 6902.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} params.ifMatch - Offering etag contained in quotes.
* @param {JsonPatchOperation[]} [params.updates] -
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>}
*/
updateOffering(params: CatalogManagementV1.UpdateOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.Offering>>;
/**
* Delete offering.
*
* Delete an offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} [params.xApproverToken] - IAM token of partner center. Only needed when Partner Center accessing
* the private catalog offering. When accessing the public offering Partner Center only needs to use their token in
* the authorization header.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>}
*/
deleteOffering(params: CatalogManagementV1.DeleteOfferingParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>;
/**
* Get offering statistics.
*
* Get the usage statistics for the specified offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.MetricStats>>}
*/
getOfferingStats(params: CatalogManagementV1.GetOfferingStatsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.MetricStats>>;
/**
* Get offering audit logs.
*
* Get the audit logs associated with an offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} [params.start] - Start token for a query.
* @param {number} [params.limit] - number or results to return in the query.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>}
*/
listOfferingAudits(params: CatalogManagementV1.ListOfferingAuditsParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLogs>>;
/**
* Get an offering audit log entry.
*
* Get the full audit log entry associated with an offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} params.auditlogIdentifier - Auditlog ID.
* @param {boolean} [params.lookupnames] - Auditlog Lookup Names - by default names are not returned in auditlog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>}
*/
getOfferingAudit(params: CatalogManagementV1.GetOfferingAuditParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.AuditLog>>;
/**
* Set offering publish approval settings.
*
* Approve or disapprove the offering to be allowed to publish to a particular public catalog based on the approval
* type. Approvers should use the catalog and offering id from the public catalog since they wouldn't have access to
* the private offering.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} params.approvalType - Type of approval.
* * `pc_managed` - Partner Center is managing this offering
* * `ibm_module_repo` - Offering is from an approved repository can be published into the module registry.
* * `ibm_community` - Offering is from an approved repository can be published into the Community registry.
* * `publish_approved` - Publishing approved, offering owners can now set who sees the offering in public catalog
* * `approval_required` - Offering will be removed from public catalog when this flag is set to true, regardless of
* the approval and visibility settings.
* @param {string} params.approved - Approve (true) or disapprove (false).
* @param {string} [params.portalRecord] - Partner Center identifier for this offering.
* @param {string} [params.portalUrl] - Partner Center url for this offering.
* @param {string} [params.xApproverToken] - IAM token of partner center. Only needed when Partner Center accessing
* the private catalog offering. When accessing the public offering Partner Center only needs to use their token in
* the authorization header.
* @param {string} [params.xAuthToken] - Authentication token used to verify if user is a collaborator of a repository
* as part of the checks to set the approval type as `ibm_module_repo` or `ibm_community`.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.ApprovalResult>>}
*/
setOfferingPublish(params: CatalogManagementV1.SetOfferingPublishParams): Promise<CatalogManagementV1.Response<CatalogManagementV1.ApprovalResult>>;
/**
* Allows offering to be deprecated.
*
* Approve or disapprove the offering to be deprecated.
*
* @param {Object} params - The parameters to send to the service.
* @param {string} params.catalogIdentifier - Catalog identifier.
* @param {string} params.offeringId - Offering identification.
* @param {string} params.setting - Set deprecation (true) or cancel deprecation (false).
* @param {string} [params.description] - Additional information that users can provide to be displayed in deprecation
* notification.
* @param {number} [params.daysUntilDeprecate] - Specifies the amount of days until product is not available in
* catalog.
* @param {OutgoingHttpHeaders} [params.headers] - Custom request headers
* @returns {Promise<CatalogManagementV1.Response<CatalogManagementV1.EmptyObject>>}
*/
deprecateOffering(params: CatalogManagementV1.DeprecateOfferingParams): Promise<CatalogManagementV1.Response<CatalogMan