@seasketch/geoprocessing
Version:
Geoprocessing and reporting framework for SeaSketch 2.0
96 lines (95 loc) • 2.64 kB
TypeScript
import { GeoprocessingServiceMetadata, PreprocessingService } from "./service.js";
import { z } from "zod";
export interface GeoprocessingProject {
uri: string;
apiVersion: string;
geoprocessingServices: GeoprocessingServiceMetadata[];
preprocessingServices: PreprocessingService[];
clients: ReportClient[];
feedbackClients: DigitizingFeedbackClient[];
title: string;
author: string;
organization?: string;
relatedUri?: string;
sourceUri?: string;
published: string;
}
/** Represents a geoprocessing client object */
export declare const clientJsonConfigSchema: z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
source: z.ZodString;
}, "strip", z.ZodTypeAny, {
name: string;
description: string;
source: string;
}, {
name: string;
description: string;
source: string;
}>;
/** Represents a geoprocessing client object */
export type ClientJsonConfig = z.infer<typeof clientJsonConfigSchema>;
/** Represents a single JS package */
export declare const geoprocessingConfigSchema: z.ZodObject<{
author: z.ZodString;
organization: z.ZodOptional<z.ZodString>;
region: z.ZodString;
geoprocessingFunctions: z.ZodArray<z.ZodString, "many">;
preprocessingFunctions: z.ZodArray<z.ZodString, "many">;
clients: z.ZodArray<z.ZodObject<{
name: z.ZodString;
description: z.ZodString;
source: z.ZodString;
}, "strip", z.ZodTypeAny, {
name: string;
description: string;
source: string;
}, {
name: string;
description: string;
source: string;
}>, "many">;
}, "strip", z.ZodTypeAny, {
author: string;
region: string;
geoprocessingFunctions: string[];
preprocessingFunctions: string[];
clients: {
name: string;
description: string;
source: string;
}[];
organization?: string | undefined;
}, {
author: string;
region: string;
geoprocessingFunctions: string[];
preprocessingFunctions: string[];
clients: {
name: string;
description: string;
source: string;
}[];
organization?: string | undefined;
}>;
/** Represents a single JS package */
export type GeoprocessingJsonConfig = z.infer<typeof geoprocessingConfigSchema>;
interface ReportClient {
title: string;
uri: string;
bundleSize: number;
apiVersion: string;
tabs: ReportTab[];
}
interface ReportTab {
title: string;
}
interface DigitizingFeedbackClient {
title: string;
uri: string;
bundleSize: number;
apiVersion: string;
offlineSupport: boolean;
}
export {};