UNPKG

@seasketch/geoprocessing

Version:

Geoprocessing and reporting framework for SeaSketch 2.0

43 lines (42 loc) 2.33 kB
import { GeoprocessingProject, GeoprocessingServiceMetadata, PreprocessingServiceMetadata } from "../src/types/index.js"; import { VectorDataSourceDetails } from "../src/index.js"; /** * Select metadata of GeoprocessingBundle for manifest */ export interface GeoprocessingFunctionMetadata extends Omit<GeoprocessingServiceMetadata, "restrictedAccess" | "uri" | "endpoint"> { handlerFilename: string; purpose: "geoprocessing" | "preprocessing"; vectorDataSources: VectorDataSourceDetails[]; uri?: string; endpoint?: string; } /** * Select metadata of PreprocessingBundle for manifest */ export interface PreprocessingFunctionMetadata extends Omit<PreprocessingServiceMetadata, "restrictedAccess" | "uri" | "endpoint"> { handlerFilename: string; purpose: "geoprocessing" | "preprocessing"; uri?: string; endpoint?: string; } export type ProcessingFunctionMetadata = PreprocessingFunctionMetadata | GeoprocessingFunctionMetadata; export type SyncFunctionMetadata = ProcessingFunctionMetadata; export type AsyncFunctionMetadata = GeoprocessingFunctionMetadata; export interface Manifest extends GeoprocessingProject { preprocessingFunctions: PreprocessingFunctionMetadata[]; geoprocessingFunctions: GeoprocessingFunctionMetadata[]; region: string; version: string; } /** Returns true if manifest contains clients */ export declare const hasClients: (manifest: Manifest) => boolean; export declare const getSyncFunctionMetadata: (manifest: Manifest) => ProcessingFunctionMetadata[]; export declare const getAsyncFunctionMetadata: (manifest: Manifest) => GeoprocessingFunctionMetadata[]; /** Returns true if metadata is for geoprocessing function and narrows type */ export declare const isGeoprocessingFunctionMetadata: (meta: any) => meta is GeoprocessingFunctionMetadata; /** Returns true if metadata is for preprocessing function and narrows type */ export declare const isPreprocessingFunctionMetadata: (meta: any) => meta is PreprocessingFunctionMetadata; /** Returns true if metadata is for sync function and narrows type */ export declare const isSyncFunctionMetadata: (meta: any) => meta is SyncFunctionMetadata; /** Returns true if metadata is for async function and narrows type */ export declare const isAsyncFunctionMetadata: (meta: any) => meta is AsyncFunctionMetadata;