UNPKG

@dasch-swiss/dsp-js

Version:

JavaScript library that handles API requests to Knora

75 lines (74 loc) 3.14 kB
import { Observable } from "rxjs"; import { KnoraApiConfig } from "../../../knora-api-config"; import { ApiResponseError } from "../../../models/api-response-error"; import { CanDoResponse } from "../../../models/v2/ontologies/read/can-do-response"; import { CreateResource } from "../../../models/v2/resources/create/create-resource"; import { DeleteResource } from "../../../models/v2/resources/delete/delete-resource"; import { DeleteResourceResponse } from "../../../models/v2/resources/delete/delete-resource-response"; import { ReadResource } from "../../../models/v2/resources/read/read-resource"; import { ReadResourceSequence } from "../../../models/v2/resources/read/read-resource-sequence"; import { UpdateResourceMetadata } from "../../../models/v2/resources/update/update-resource-metadata"; import { UpdateResourceMetadataResponse } from "../../../models/v2/resources/update/update-resource-metadata-response"; import { Endpoint } from "../../endpoint"; import { V2Endpoint } from "../v2-endpoint"; /** * Handles requests to the resources route of the Knora API. * * @category Endpoint V2 */ export declare class ResourcesEndpointV2 extends Endpoint { protected readonly knoraApiConfig: KnoraApiConfig; protected readonly path: string; private readonly v2Endpoint; /** * @category Internal * @param knoraApiConfig the config object. * @param path this endpoint's base path. * @param v2Endpoint a reference to the v2 endpoint. */ constructor(knoraApiConfig: KnoraApiConfig, path: string, v2Endpoint: V2Endpoint); /** * Given a sequence of resource IRIs, gets the resources from Knora. * * @param resourceIris Iris of the resources to get. * @param version Timestamp of the resource version. */ getResources(resourceIris: string[], version?: string): Observable<ReadResourceSequence>; /** * Given a resource IRI, gets the resource from Knora. * * @param resourceIri Iri of the resource to get. * @param version Timestamp of the resource version. */ getResource(resourceIri: string, version?: string): Observable<ReadResource>; /** * Creates a new resource. * * @param resource the resource to be created. */ createResource(resource: CreateResource): Observable<ReadResource>; /** * Updates a resource's metadata. * * @param resourceMetadata the new metadata. */ updateResourceMetadata(resourceMetadata: UpdateResourceMetadata): Observable<UpdateResourceMetadataResponse>; /** * Checks whether a resource can be deleted or not. * * @param resource the resource to check. */ canDeleteResource(resource: DeleteResource): Observable<CanDoResponse | ApiResponseError>; /** * Deletes a resource. * * @param resource the resource to be deleted. */ deleteResource(resource: DeleteResource): Observable<DeleteResourceResponse>; /** * Erases a resource. * * @param resource the resource to be deleted. */ eraseResource(resource: DeleteResource): Observable<DeleteResourceResponse>; }