import { BaseResourceAPI, CursorAndAsyncIterator } from '@cognite/sdk-core'; import { Asset, AssetAggregate, AssetAggregateQuery, AssetChange, AssetIdEither, AssetListScope, AssetRetrieveParams, AssetSearchFilter, ExternalAssetItem, IdEither } from '../../types'; export declare class AssetsAPI extends BaseResourceAPI { /** * @hidden */ protected getDateProps(): [string[], string[]]; /** * [Creates new assets](https://doc.cognitedata.com/api/v1/#operation/createAssets) * * ```js * const assets = [ * { name: 'First asset' }, * { name: 'Second asset', description: 'Another asset', externalId: 'anotherAsset' }, * { name: 'Child asset', parentExternalId: 'anotherAsset'}, * ]; * const createdAssets = await client.assets.create(assets); * ``` */ create: (items: ExternalAssetItem[]) => Promise; /** * [List assets](https://doc.cognitedata.com/api/v1/#operation/listAssets) * * * ```js * const assets = await client.assets.list({ filter: { name: '21PT1019' } }); * ``` */ list: (scope?: AssetListScope) => CursorAndAsyncIterator; /** * [Aggregate assets](https://docs.cognite.com/api/v1/#operation/aggregateAssets) * * ```js * const aggregates = await client.assets.aggregate({ filter: { root: true } }); * console.log('Number of root assets: ', aggregates[0].count) * ``` */ aggregate: (query: AssetAggregateQuery) => Promise; /** * [Retrieve assets](https://doc.cognitedata.com/api/v1/#operation/byIdsAssets) * * * ```js * const assets = await client.assets.retrieve([{id: 123}, {externalId: 'abc'}]); * ``` */ retrieve: (ids: IdEither[], params?: AssetRetrieveParams) => Promise; /** * [Update assets](https://doc.cognitedata.com/api/v1/#operation/updateAssets) * * ```js * const assets = await client.assets.update([{id: 123, update: {name: {set: 'New name'}}}]); * ``` */ update: (changes: AssetChange[]) => Promise; /** * [Search for assets](https://doc.cognitedata.com/api/v1/#operation/searchAssets) * * ```js * const assets = await client.assets.search({ * filter: { * parentIds: [1, 2] * }, * search: { * query: '21PT1019' * } * }); * ``` */ search: (query: AssetSearchFilter) => Promise; /** * [Delete assets](https://doc.cognitedata.com/api/v1/#operation/deleteAssets) * * ```js * await client.assets.delete([{id: 123}, {externalId: 'abc'}]); * ``` */ delete: (ids: AssetIdEither[], params?: AssetDeleteParams) => Promise<{}>; } export interface AssetDeleteParams { recursive?: boolean; }