@dasch-swiss/dsp-js
Version:
JavaScript library that handles API requests to Knora
75 lines (74 loc) • 3.14 kB
TypeScript
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>;
}