/** * Config API v1 * The `config` service provides basic catalog management operations. * It manages all platform resources needed for different kinds of catalogs and operations on them. * * OpenAPI spec version: 1.1.7 * * * NOTE: This class is auto generated by the swagger code generator program. * https://github.com/swagger-api/swagger-codegen.git * * Do not edit the class manually. */ import { RequestBuilder } from "./RequestBuilder"; export interface AutomaticVersionDeletion { /** * Specifies how many versions to keep. To optimise storage costs, you can specify how many latest versions to keep. * The minimum number of versions to keep is 1. The maximum number of versions to keep is 1,000. */ numberOfVersionsToKeep: number; } /** * List of billing tags a free-form tag which is used for grouping billing records together. * If supplied, it must be between 4 - 16 characters, contain only alphanumeric ASCII characters [A-Za-z0-9]. */ export type BillingTags = string[]; /** * The CRC algorithm used to calculate the checksum for the partitions in this layers */ export type CRC = "CRC-32C"; /** * Describes the catalog properties. */ export interface Catalog { /** * The ID to use when referring to this catalog programmatically. * Catalog IDs must be unique across all catalogs in the Open Location Platform. * Do not put private information in the catalog ID. * The catalog ID forms a portion of the catalog's HERE Resource Name (HRN), * and HRNs are visible to other users. */ id: string; /** * The HERE Resource Name (HRN) of the catalog */ hrn: string; /** * The short name for the catalog */ name: string; /** * A one-sentence summary of the catalog. You can see this summary when you browse a list of catalogs on the * platform portal. */ summary: string; /** * A detailed description of the catalog and what it contains. This information appears on the 'Overview' * tab when you open a catalog in the platform portal. */ description: string; coverage?: Coverage; owner?: Owner; /** * Some keywords that help to find the catalog when searching in the platform portal */ tags: string[]; /** * Aggregated list of all layers` billing tags. Note that this element is read-only and does not exist in * `CreateCatalog`. If posted during catalog creation, the value will be ignored. */ billingTags?: BillingTags; /** * The creation date and time. */ created: string; replication: Replication; automaticVersionDeletion?: AutomaticVersionDeletion; /** * The layers in the catalog. */ layers: Array; /** * The version of the catalog configuration. Every change in this number indicates a change in the catalog * configuration. It is incremented every time you make changes, such as change catalog parameters or add layers. * Note that this is not a metadata/data version as configuration and metadata versions are independent * of each other and indicate different kind of changes. */ version: number; notifications?: Notifications; /** * Indicates whether the catalog is ready to be listed in the Marketplace. If the value is `true`, * the catalog is ready to be listed in the Marketplace. */ marketplaceReady?: boolean; } /** * Describes the detailed status of the failed catalog creation operation. */ export interface CatalogFailureStatus { reason?: string; /** * Status of the operation */ status?: string; } /** * Describes the status and href of the create/update/delete resource such as a catalog. */ export interface CatalogLink { /** * href of the catalog */ href?: string; /** * The HERE Resource Name (HRN) of the catalog */ hrn?: string; /** * Title of the action */ title?: string; /** * Type of the href */ type?: string; } /** * Describes the status of the successful catalog creation operation including its href. */ export interface CatalogOperationSuccessStatus { item?: CatalogLink; /** * Status of the operation */ status: string; } /** * Describes the status of the catalog modification action. */ export interface CatalogPendingStatus { /** * Status of the operation */ status?: string; } /** * Describes the status of the successful catalog creation operation including its href. */ export interface CatalogSuccessStatus { item?: StatusLink; /** * Status of the operation */ status?: string; } /** * Describes the main properties of the catalog. */ export interface CatalogSummary { /** * The link to the catalog details. */ href?: string; /** * The HERE Resource Name (HRN) for the catalog. */ hrn?: string; /** * The name of the catalog as specified in the \"name\" property when the catalog was created. */ title?: string; /** * The type of the href. All hrefs are currently set to urn:olp-types:catalog */ type?: string; } /** * Describes base class. */ export interface CatalogsResultBase { verbose?: boolean; } /** * List of the catalog summaries. */ export interface CatalogsList { items?: CatalogSummary[] | Catalog[]; } /** * Contains a list of catalogs the user has access to. */ export interface CatalogsListResult extends CatalogsResultBase { results?: CatalogsList; } /** * List of the catalog summaries */ export interface CatalogsSummaryList { items?: Array; } /** * Contains a list of catalog summaries the user has access to. */ export interface CatalogsSummaryListResult extends CatalogsResultBase { results?: CatalogsSummaryList; } /** * Identifies whether the data is compressed. */ export type ContentEncoding = "gzip"; /** * The MIME type of the data is stored in this layer. */ export type ContentType = string; /** * The geographic area that this layer covers. */ export interface Coverage { /** * A list of ISO 3166 two-letter codes for countries and regions optionally followed by up to * three characters codes for subdivisions, such as 'DE', 'PL' or 'CN-HK'. */ adminAreas?: string[]; } /** * Describes the base class. */ export interface CreateBaseLayer { layerType: string; } /** * Describes the configuration of the catalog including its layer definitions. */ export interface CreateCatalog { /** * A detailed description of the catalog and what it contains. * This information appears on the 'Overview' tab when you open a catalog in the platform portal. */ description: string; /** * The ID to use when referring to this catalog programmatically. * Catalog IDs must be unique across all catalogs in the HERE platform. * Do not put private information in the catalog ID. The catalog ID forms a portion of the catalog's * HERE Resource Name (HRN), * and HRNs are visible to other users. * Only lowercase alphanumeric characters (a-z), digits (0-9) and dash (-) are allowed in a catalog ID. */ id: string; /** * The layers in the catalog */ layers?: Array; /** * The short name for the catalog. */ name: string; notifications?: Notifications; replication?: Replication; /** * A one-sentence summary of the catalog. You can see this summary when you browse a list of catalogs on the * platform portal. */ summary: string; /** * Some keywords that help to find the catalog when searching in the platform portal. */ tags?: Tags; /** * The version of the catalog configuration. * Every change in this number indicates change in catalog configuration. * Examples of changes in catalog configuration include changing catalog parameters and adding layers. * Note that the catalog configuration version is not the same as the metadata/data version. * Configuration and metadata versions are independent of each other and indicate different kinds of changes. */ version?: number; automaticVersionDeletion?: AutomaticVersionDeletion; } /** * Describes properties of a catalog index layer. */ export interface CreateIndexLayer extends CreateBaseLayer { id: LayerId; name: LayerName; summary: LayerSummary; description: LayerDescription; coverage?: Coverage; schema?: Schema; contentType: ContentType; contentEncoding?: ContentEncoding; tags: Tags; billingTags: BillingTags; indexProperties?: IndexProperties; digest?: Digest; crc?: CRC; layerType: IndexLayerType; } /** * Describes properties of a catalog interactive maps layer. */ export interface CreateInteractiveMapsLayer extends CreateBaseLayer { id: LayerId; name: LayerName; summary: LayerSummary; description: LayerDescription; tags: Tags; billingTags: BillingTags; interactiveMapsProperties?: InteractiveMapsProperties; layerType: InteractiveMapsLayerType; } /** * Describes properties of a catalog object store layer. */ export interface CreateObjectstoreLayer extends CreateBaseLayer { id: LayerId; name: LayerName; summary: LayerSummary; description: LayerDescription; tags?: Tags; billingTags: BillingTags; layerType: ObjectstoreLayerType; } /** * Describes properties of a catalog stream layer. */ export interface CreateStreamLayer extends CreateBaseLayer { id: LayerId; name: LayerName; summary: LayerSummary; description: LayerDescription; coverage?: Coverage; schema?: Schema; partitioningScheme?: DeprecatedPartitioningScheme; partitioning?: Partitioning; contentType: ContentType; contentEncoding?: ContentEncoding; tags: Tags; billingTags: BillingTags; ttlHours?: TtlHours; ttl?: Ttl; volume?: DurableVolume; streamProperties?: StreamProperties; layerType: StreamLayerType; } /** * Describes properties of a catalog versioned layer. */ export interface CreateVersionedLayer extends CreateBaseLayer { id: LayerId; name: LayerName; summary: LayerSummary; description: LayerDescription; coverage?: Coverage; schema?: Schema; partitioningScheme?: DeprecatedPartitioningScheme; partitioning?: Partitioning; contentType: ContentType; contentEncoding?: ContentEncoding; tags: Tags; billingTags: BillingTags; digest?: Digest; crc?: CRC; layerType: VersionedLayerType; } /** * Describes properties of a catalog volatile layer. */ export interface CreateVolatileLayer extends CreateBaseLayer { id: LayerId; name: LayerName; summary: LayerSummary; description: LayerDescription; coverage?: Coverage; schema?: Schema; partitioningScheme?: DeprecatedPartitioningScheme; partitioning?: Partitioning; contentType: ContentType; contentEncoding?: ContentEncoding; tags: Tags; billingTags: BillingTags; ttlHours?: TtlHours; ttl?: Ttl; digest?: Digest; crc?: CRC; volume?: VolatileVolume; volatileProperties?: VolatileProperties; layerType: VolatileLayerType; } export interface Creator { /** * The unique ID of the user or application that initially created the catalog. */ id?: string; } /** * The name of the partitioning scheme for the layer. */ export type DeprecatedPartitioningScheme = "generic" | "heretile"; /** * The digest algorithm used to calculate the checksum for the partitions in this layer. * If specified, you can assume that all partitions in the layer, at every version, were calculated using this algorithm. * Note that it is the responsibility of the data publisher to use this algorithm to calculate partition checksums. * The HERE platform does not verify that the specified algorithm was actually used. */ export type Digest = "MD5" | "SHA-1" | "SHA-256"; /** * Describes a catalog durable volume to be used for storing the layer's data content. */ export interface DurableVolume { volumeType: "durable"; } /** * Describes the base class. */ export interface GetBaseLayer { layerType: string; } export interface IndexDefinition { /** * timewindow - represents the time slice (NOT just point in time) and it denotes the finest * time granularity at which the data will be indexed and later queried. Time type has an attribute duration which represents the * time slice length.It is NOT mutable. Both time key value and time type duration * is expressed in milliseconds (time value is milliseconds since Epoch). Value of duration is between 10 minutes and 1 day in millis */ duration?: number; name?: string; type?: TypeEnum; /** * heretile - represents the tile id in the HERE tile map tiling scheme. heretile type has an attribute zoomLevel * which represents the size of the tile and it's NOT mutable. */ zoomLevel?: number; } export type TypeEnum = "bool" | "int" | "string" | "heretile" | "timewindow"; export type ZoomLevelEnum = "0" | "1" | "2" | "3" | "4" | "5" | "6" | "7" | "8" | "9" | "10" | "11" | "12" | "13" | "14"; /** * Describes the catalog index layer properties. */ export interface IndexLayer extends GetBaseLayer { id: LayerId; hrn: LayerHrn; name: LayerName; summary: LayerSummary; description: LayerDescription; coverage?: Coverage; schema?: Schema; contentType: ContentType; contentEncoding?: ContentEncoding; tags: Tags; billingTags: BillingTags; volume: DurableVolume; indexProperties: IndexProperties; created: LayerCreated; digest?: Digest; crc?: CRC; layerType: IndexLayerType; } /** * The type of data availability that this layer provides. */ export type IndexLayerType = "index"; export interface IndexProperties { indexDefinitions?: IndexDefinition[]; /** * Amount of time data will remain in index layer. If not specified it defaults to 7 days */ ttl?: TtlEnum; } /** * Describes the catalog interactive maps layer properties. */ export interface InteractiveMapsLayer extends GetBaseLayer { id: LayerId; hrn: LayerHrn; name: LayerName; summary: LayerSummary; description: LayerDescription; tags: Tags; billingTags: BillingTags; interactiveMapsProperties?: InteractiveMapsProperties; created: LayerCreated; layerType: InteractiveMapsLayerType; } export interface InteractiveMapsProperties { /** * A list properties that must be indexed for faster queries. */ searchableProperties?: Array; } /** * The type of data availability that this layer provides */ export type InteractiveMapsLayerType = "interactivemap"; /** * The layer creation timestamp. */ export type LayerCreated = string; /** * A detailed description of the layer and what it contains. * This information appears on the 'Overview' tab when you open a layer in the platform portal. */ export type LayerDescription = string; /** * The HERE Resource Name (HRN) of the layer. */ export type LayerHrn = string; /** * The ID to use when referring to this layer programmatically. */ export type LayerId = string; /** * The display name for the layer. */ export type LayerName = string; /** * A one-sentence summary of the layer. You can see this summary when you browse a list of layers on the platform portal. */ export type LayerSummary = string; export interface Notifications { /** * If set to true, then a notification is written to the notification stream each time the version of the catalog changes. */ enabled?: boolean; } /** * Describes the catalog objectstore layer properties. */ export interface ObjectstoreLayer extends GetBaseLayer { id: LayerId; hrn: LayerHrn; name: LayerName; summary: LayerSummary; description: LayerDescription; tags: Tags; billingTags: BillingTags; volume: DurableVolume; created: LayerCreated; layerType: ObjectstoreLayerType; } /** * The type of data availability that this layer provides */ export type ObjectstoreLayerType = "objectstore"; export interface Organisation { /** * The ID of the customer organisation relating to this catalog */ id?: string; } export interface Owner { creator?: Creator; organisation?: Organisation; } /** * Describes the way in which data is partitioned within the layer */ export interface Partitioning { /** * The name of the partitioning scheme for the layer. */ scheme: PartitioningScheme; /** * A list of quadtree tile levels which contain data partitions. Only used if the partitioningScheme is heretile. */ tileLevels?: number[]; } /** * The name of the partitioning scheme for the layer. */ export type PartitioningScheme = "generic" | "heretile"; /** * Describes the modification of the catalog configuration. */ export interface PatchCatalog { /** * A detailed description of the catalog and what it contains. * This information appears on the 'Overview' tab when you open a catalog in the platform portal. * Field is optional, specify value to modify catalog description. This field is not removable, null value is not allowed */ description?: string; /** * The short name for the catalog. Field is optional, specify value to modify catalog name. * This field is not removable, null value is not allowed */ name?: string; /** * If set to true, then a notification is written to the notification stream each time the version of the catalog changes. * Field is optional, specify value to modify notifications. This field is not removable, null value is not allowed */ notifications?: Notifications; replication?: Replication; /** * A one-sentence summary of the catalog. You can see this summary when you browse a list of catalogs on the platform portal. * Field is optional, specify value to modify catalog summary. This field is not removable, null value is not allowed */ summary?: string; /** * Some keywords that help to find the catalog when searching in the platform portal. Field is optional, * specify value to replace all list of tags. This field is not removable, null value is not allowed */ tags?: Tags; } export interface PatchIndexProperties { /** * Amount of time data will remain in index layer. If not specified, it defaults to 7 days. Can be updated only if not set already. */ ttl?: TtlEnum; } export type TtlEnum = "7.days" | "15.days" | "1.month" | "2.months" | "3.months" | "4.months" | "6.months" | "1.year" | "1.5.years" | "2.year" | "unlimited"; export interface PatchInteractiveMapsProperties { /** * A list properties that must be indexed for faster queries. You can only add new fields to the array. * To clear the array, set it to null. */ searchableProperties?: Array; } /** * Describes the modification of the layer configuration. */ export interface PatchLayer { /** * The short name for the layer. Field is optional, Specify a value to modify layer name. * This field is not removable, null value is not allowed. */ name?: string; /** * A one-sentence summary of the layer. You can see this summary when you browse a list of layers on * the platform portal. Field is optional, Specify a value to modify layer summary. * This field is not removable, null value is not allowed. */ summary?: string; /** * A detailed description of the layer and what it contains. This information appears on the 'Overview' * tab when you open a layer in the platform portal. Field is optional, Specify a value to modify layer description. * This field is not removable, null value is not allowed. */ description?: string; coverage?: Coverage; schema?: Schema; partitioning?: Partitioning; indexProperties?: PatchIndexProperties; streamProperties?: PatchStreamProperties; interactiveMapsProperties?: PatchInteractiveMapsProperties; /** * Some keywords that help to find the layer when searching in the platform portal. Field is optional, * Specify a value to replace all list of tags. This field is not removable, null value is not allowed. */ tags?: Array; /** * List of billing tags a free-form tag which is used for grouping billing records together. If supplied, * it must be between 4 - 16 characters, contain only alphanumeric ASCII characters [A-Za-z0-9]. * Field is optional, Specify a value to replace all list of billing tags. * This field is not removable, null value is not allowed. */ billingTags?: Array; crc?: CRC; digest?: Digest; ttl?: Ttl; contentType?: ContentType; contentEncoding?: ContentEncoding; } /** * Properties that define the scale of the required streaming layer. `dataInThroughputKbps` and `dataOutThroughputKbps` * can only be values multiple of 100. For instance, the value 33200 is valid while 32250 is not. */ export interface PatchStreamProperties { /** * Maximum throughput for incoming data expressed in kilobytes per second. Throttling occurs when the inbound * rate exceeds the maximum inbound throughput. The default is 1000 KBps. The minimum is 100 KBps, the maximum is * 32800 KBps. Can only be multiple of 100 KBps. */ dataInThroughputKbps?: number; /** * Maximum throughput for outgoing data expressed in kilobytes per second. Throttling occurs when the total * outbound rate to all consumers exceeds the maximum outbound throughput. The default is 4000 KBps. * The minimum is 100 KBps, the maximum is 65500 KBps. Can only be multiple of 100 KBps. */ dataOutThroughputKbps?: number; } export interface Replication { /** * A list of the catalog's replication regions and each region's role. For multi-region replication catalogs * list should contain multiple items where at least one should be with `primary` role. * For single region catalogs should define `primary` region. Currently only `eu-ireland` is allowed as primary region */ regions?: ReplicationRegion[]; } export interface ReplicationRegion { /** * The ID of the region. */ id: IdEnum; /** * Indicates whether the region is a primary or failover region. One of the following: * `primary` - The region is used by default for reading and writing. `secondary` - The region used as a failover region. */ role?: RoleEnum; } export type IdEnum = "eu-ireland" | "us-oregon"; export type RoleEnum = "primary" | "secondary"; /** * Describes a HRN for the layer schema */ export interface Schema { hrn?: string; } /** * Describes the status and href of the create/update/delete resource such as a catalog. */ export interface StatusLink { /** * href of the created/update/delete catalog action */ href?: string; /** * token of the created/update/delete catalog action */ configToken?: string; /** * Title of the action. */ title?: string; /** * Type of the href. */ type?: string; } /** * Describes the catalog stream layer properties. */ export interface StreamLayer extends GetBaseLayer { id: LayerId; hrn: LayerHrn; name: LayerName; summary: LayerSummary; description: LayerDescription; coverage?: Coverage; schema?: Schema; partitioningScheme: DeprecatedPartitioningScheme; partitioning: Partitioning; contentType: ContentType; contentEncoding?: ContentEncoding; tags: Tags; billingTags: BillingTags; ttlHours: TtlHours; ttl: Ttl; volume: DurableVolume; streamProperties: StreamProperties; created: LayerCreated; layerType: StreamLayerType; } /** * The type of data availability that this layer provides. */ export type StreamLayerType = "stream"; /** * Properties that define the scale of the required streaming layer. * It is recommended to provide all 3 properties when creating a streaming layer. * Either combination of `dataInThroughputKbps` and `dataOutThroughputKbps` or `parallelization` is required. * `dataInThroughputKbps` and `dataOutThroughputKbps` can only be values multiple of 100. For instance, the value * 33200 is valid while 32250 is not. Default values for missing field(s) will be calculated according to the * following formulas: `1 parallelization = 1000 dataInThroughputKbps`, `1 parallelization = 2000 dataOutThroughputKbps`. */ export interface StreamProperties { /** * Maximum throughput for incoming data expressed in kilobytes per second. Throttling occurs when the inbound rate * exceeds the maximum inbound throughput. The default is 1000 KBps. The minimum is 100 KBps, the maximum is 32800 KBps. * Can only be multiple of 100 KBps. Can be updated by the user. */ dataInThroughputKbps?: number; /** * Maximum throughput for outgoing data expressed in kilobytes per second. Throttling occurs when the total outbound * rate to all consumers exceeds the maximum outbound throughput. The default is 4000 KBps. The minimum is 100 KBps, * the maximum is 65500 KBps. Can only be multiple of 100 KBps. Can be updated by the user. */ dataOutThroughputKbps?: number; /** * Number of stream partitions that maps to a Kafka topic partition. The maximum parallelism at which your application * may run is determined by the maximum number of stream partitions of the input stream layer the application is reading * from in its processing topology. The default is 4. The maximum is 32. */ parallelization?: number; } /** * Some keywords that help to find the layer when searching in the platform portal. */ export type Tags = string[]; /** * The expiry time in milliseconds for data in this layer. * Data is automatically removed after the specified time limit has elapsed. For volatile layers the * TTL value must be between 60000 (1 minute) and 604800000 (7 days). For stream layers the TTL * value must be between 600000 (10 minutes) and 259200000 (72 hours). */ export type Ttl = number; /** * The expiry time in hours for data in this layer. Data is automatically removed after the specified time limit has elapsed. */ export type TtlHours = number; /** * Describes the catalog versioned layer properties. */ export interface VersionedLayer extends GetBaseLayer { id: LayerId; hrn: LayerHrn; name: LayerName; summary: LayerSummary; description: LayerDescription; coverage?: Coverage; schema?: Schema; partitioningScheme: DeprecatedPartitioningScheme; partitioning: Partitioning; contentType: ContentType; contentEncoding?: ContentEncoding; tags: Tags; billingTags: BillingTags; digest?: Digest; crc?: CRC; volume: DurableVolume; created: LayerCreated; layerType: VersionedLayerType; } /** * The type of data availability that this layer provides. */ export type VersionedLayerType = "versioned"; /** * Describes the catalog volatile layer properties. */ export interface VolatileLayer extends GetBaseLayer { id: LayerId; hrn: LayerHrn; name: LayerName; summary: LayerSummary; description: LayerDescription; coverage?: Coverage; schema?: Schema; partitioningScheme: DeprecatedPartitioningScheme; partitioning: Partitioning; contentType: ContentType; contentEncoding?: ContentEncoding; tags: Tags; billingTags: BillingTags; ttlHours: TtlHours; ttl: Ttl; digest?: Digest; crc?: CRC; volume: VolatileVolume; volatileProperties?: VolatileProperties; created: LayerCreated; layerType: VolatileLayerType; } /** * The type of data availability that this layer provides. */ export type VolatileLayerType = "volatile"; /** * Properties that define the scale of the volatile layer. */ export interface VolatileProperties { /** * Volatile storage provision mode. */ dataRedundancy?: DataRedundancyEnum; /** * Capacity of volatile storage in MB. Value should be divisible by 100. The minimum is 100, the maximum is 21000 MB. */ storageCapacityMb: number; } export type DataRedundancyEnum = "single-instance" | "multi-instance"; /** * Describes a catalog volatile volume to be used for storing the layer's data content. */ export interface VolatileVolume { /** * Define keys eviction policy when the memory limit for volatile layer is reached */ maxMemoryPolicy?: MaxMemoryPolicyEnum; volumeType: "volatile"; } export type MaxMemoryPolicyEnum = "failOnWrite" | "replaceLessRecentlyUsedKey"; /** * Checks whether a catalog with the specified HRN exists. * * @summary Checks the existence of a catalog * @param catalogHrn The HERE Resource Name (HRN) of the catalog. * @param billingTag The `billingTag` parameter is an optional free-form tag that you can use to group billing * records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. * Grouping billing records by billing tag will be available in future releases. */ export declare function catalogExists(builder: RequestBuilder, params: { catalogHrn: string; billingTag?: string; }): Promise; /** * Creates a new catalog with the specified layers. The create catalog operation runs asynchronously. * Once you've submitted the catalog for creation, you'll receive a randomly generated token that you can use to monitor * the status of the operation. * * @summary Creates a catalog * @param body A catalog object that contains metadata and layer definitions. * @param billingTag The `billingTag` parameter is an optional free-form tag that you can use to group billing * records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. * Grouping billing records by billing tag will be available in future releases. */ export declare function createCatalog(builder: RequestBuilder, params: { body: CreateCatalog; billingTag?: string; }): Promise; /** * Deletes a catalog and any layers within that catalog. * * @summary Deletes a catalog * @param catalogHrn The HERE Resource Name (HRN) of the catalog * @param billingTag The `billingTag` parameter is an optional free-form tag that you can use to group billing records together. * If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. * Grouping billing records by billing tag will be available in future releases. */ export declare function deleteCatalog(builder: RequestBuilder, params: { catalogHrn: string; billingTag?: string; }): Promise; /** * Deletes a layer of the catalog if it's of layerType 'index', 'volatile', or 'stream'. Other `layerTypes` are currently not supported. * * @summary Delete a layer * @param catalogHrn The HERE Resource Name (HRN) of the catalog * @param layerId The layer ID */ export declare function deleteLayer(builder: RequestBuilder, params: { catalogHrn: string; layerId: string; }): Promise; /** * Disable automatic retired versions cleanup. * * @summary Disable automatic version deletion * @param catalogHrn The HERE Resource Name (HRN) of the catalog. */ export declare function disableAutomaticVersionDeletion(builder: RequestBuilder, params: { catalogHrn: string; }): Promise; /** * Gets the full catalog configuration for the requested catalog. The catalog configuration contains descriptive and * structural information such as layer definitions and layer types. * * @summary Gets the details of a catalog * @param catalogHrn The HERE Resource Name (HRN) of the catalog * @param billingTag The `billingTag` parameter is an optional free-form tag that you can use to group billing * records together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. * Grouping billing records by billing tag will be available in future releases. */ export declare function getCatalog(builder: RequestBuilder, params: { catalogHrn: string; billingTag?: string; }): Promise; /** * Takes the randomly generated token that you receive when you submit a catalog for creation. You can use it to monitor the status * of your request. * * @summary Gets the status of a create, update or delete catalog request. * @param token The token of catalog creation, modification or deletion task * @param billingTag The `billingTag` parameter is an optional free-form tag that you can use to group billing records * together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. * Grouping billing records by billing tag will be available in future releases. */ export declare function getCatalogStatus(builder: RequestBuilder, params: { token: string; billingTag?: string; }): Promise; /** * Lists all catalogs that your account has access to. To get access to a catalog, your administrator must associate this catalog * in your HERE platform account. By default, the list provides summary data for each catalog such as the title, the configuration * URL, and the resource type. * * @summary Gets a list of all catalogs * @param billingTag The `billingTag` parameter is an optional free-form tag that you can use to group billing records * together. If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. * Grouping billing records by billing tag will be available in future releases. * @param verbose Indicates if the response should contain fully expanded catalog configurations. "true" | "false". * @param q Works only when the verbose flag is set to true. The result contains only those items which have the given string * as a part of the value of one or more searchable fields (substring compare). It will search the following catalog details * fields: id, name, summary, description, tags and layer details: id, name, summary, description, tags, schema-hrn * @param organisation Works only when the verbose flag is set to true. Filters only catalogs (layers) that belong to a specified * organisation. You can filter only by catalog (layer) owner organisation ID. If you do not specify an organisation, the search * is unfiltered. * @param organisationType Works only when the verbose flag is set to true. Filters only catalogs that belong to an organisation. * If set to ``myOrganisation``, the search is for catalogs (layers) with the same owner organisation ID like the * requester``s. If set to ``here``, the search is for catalogs (layers) with the same owner organisation ID * is equal to the Here organisation. If set to ``other``, the search is for catalogs (layers) with an owner organisation * ID not equal to the requester organisation and not equal to HERE organisation. If you do not specify an organisation, * the search is unfiltered. * @param layerType Works only when the verbose flag is set to true. Comma-separated list of layer types (with OR semantic) to look for * in the layer type. Filters only catalogs that contain layers with layer type presented in a given list. If you do not specify a layer * type, the search is unfiltered. * @param region Works only when the verbose flag is set to true. Comma-separated list of regions (with OR semantic) to look for * in the catalog replication configuration. Filters only catalogs that contain region presented in given list. * If you do not specify a region, the search is unfiltered. * @param schemaHrn Works only when the verbose flag is set to true. Filters only catalogs (layers) by the specified layer schema HRN. * You can only filter by layer schema. If you do not specify a schema, the search is unfiltered. * @param resourceType Works only when the verbose flag is set to true. Specifies other filters behavior. If set to `catalog`, * this applies other filters to search catalogs (and layers inside). If set to `layer`, this applies other filters to search layers. * The returned json structure is the same for both cases (list of catalogs with list of layers inside each catalog). * @param coverage Works only when the verbose flag is set to true. Comma-separated list of countries (with OR semantic) to look for * in the catalog (layer) coverage. Only catalogs (layers) covering specified countries will be returned. This filed is case-insensitive. * If you do not specify coverage, the search includes all countries. * @param access Works only when the verbose flag is set to true. Comma-separated list of access types (with OR semantic) * to filter result. If set to `default`, the response includes catalogs the user has read or manage access to. If set to `create`, * the response includes catalogs the user has created and which match the `owner.creator` field, if set to `manage`, * the response includes catalogs the user has manage access to. If set to `orgAdmin`, the response includes catalogs the `OrgAdmin` * user have access to. * @param marketplaceReady Indicates if the response should contain only Marketplace-ready catalogs. If this flag is set to true, * the service will return only catalogs with the `marketplaceReady` element set to true. * @param limit Works only when the verbose flag is set to true. When specified, result element count will be limited to this value. * Minimum: 1. * @param sortBy Works only when the verbose flag is set to true. Specifies sort field. If set to `name`, the response contains catalogs * sorted by catalog name. If set to `created`, the the response contains catalogs sortedby catalog create time. Layers inside a catalog * are always sorted by layer name. If you do not specify a `sortBy`, the response contains catalogs sorted by `name`. * @param sortOrder Works only when the verbose flag is set to true. Specifies the sort order. If set to `asc`, * the sort order is ascending. If set to `desc`, the sort order is descending. If you do not specify `sortOrder`, * the sort order is ascending. * @param linkable Indicates if the response should only return the list of linkable catalogs. Note: - If set to * `true` and the access token has a project scope, then the response will include the catalogs * that are available to the caller to link to the project in the token`s project scope and HERE public catalogs. * - If set to `true` and the access token has no scope, then the response will include all HERE public catalogs only. */ export declare function getCatalogs(builder: RequestBuilder, params: { billingTag?: string; verbose?: string; q?: string; organisation?: string; organisationType?: Array; layerType?: Array; region?: Array; schemaHrn?: string; resourceType?: string; coverage?: Array; access?: Array; marketplaceReady?: boolean; limit?: number; sortBy?: string; sortOrder?: string; linkable?: boolean; }): Promise; /** * Modify some fields of the catalog. The existing HTTP PUT method only allows a complete replacement of a catalog configuration, * HTTP PATCH method is used to modify some fields of existing catalog configuration. All fields are optional. * Specify field value to modify it, not specified fields are ignored. To remove the field value use the null value. * For more information, see RFC 7396 - JSON Merge Patch. * * @summary Modify a catalog * @param body A catalog object that contains modification of catalog configuration * @param catalogHrn The HERE Resource Name (HRN) of the catalog */ export declare function patchCatalog(builder: RequestBuilder, params: { body: PatchCatalog; catalogHrn: string; }): Promise; /** * Modify some fields of the catalog layer. HTTP PATCH method is used to modify some fields of existing layer configuration. * All fields are optional. Specify field value to modify it, not specified fields are ignored. To remove the field value use the null * value. For more information see RFC 7396 - JSON Merge Patch. * * @summary Modify a catalog layer * @param body A layer object that contains modification of layer configuration * @param catalogHrn The HERE Resource Name (HRN) of the catalog * @param layerId The layer ID */ export declare function patchLayer(builder: RequestBuilder, params: { body: PatchLayer; catalogHrn: string; layerId: string; }): Promise; /** * Updates any descriptive and structural information in the catalog. To update a catalog, send a new version of your catalog * configuration with the updated data and any required fields. * * @summary Updates a catalog * @param body A catalog object that contains metadata and layer definitions. * @param catalogHrn The HERE Resource Name (HRN) of the catalog * @param billingTag The `billingTag` parameter is an optional free-form tag that you can use to group billing records together. * If supplied, it must be between 4 - 16 characters, contain only alpha/numeric ASCII characters [A-Za-z0-9]. * Grouping billing records by billing tag will be available in future releases. */ export declare function updateCatalog(builder: RequestBuilder, params: { body: CreateCatalog; catalogHrn: string; billingTag?: string; }): Promise;