UNPKG

@seasketch/geoprocessing

Version:

Geoprocessing and reporting framework for SeaSketch 2.0

109 lines (108 loc) 4.86 kB
import { z } from "zod"; /** * A geographic area (Polygon) for planning. Typically used to represent a planning area */ export declare const geographySchema: z.ZodObject<{ /** Unique name of the geography */ geographyId: z.ZodString; /** ID of datasource containing geography boundary */ datasourceId: z.ZodString; /** Display name for the geography */ display: z.ZodString; /** Optional, defines external layer for visualizing the geography */ layerId: z.ZodOptional<z.ZodString>; /** Optional, sub-geography identifier. Useful when you have multiple groupings/levels of geographies and want to select for a specific group */ groups: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; /** Optional, defines whether or not precalc should be run for this geography */ precalc: z.ZodBoolean; /** Required if external datasource used, defines filter to constrain geography features, matches feature property having one or more specific values */ propertyFilter: z.ZodOptional<z.ZodObject<{ property: z.ZodString; values: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; }, "strip", z.ZodTypeAny, { values: (string | number)[]; property: string; }, { values: (string | number)[]; property: string; }>>; /** Optional, constrain geography to only features within a bounding box */ bboxFilter: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>; }, "strip", z.ZodTypeAny, { datasourceId: string; precalc: boolean; display: string; geographyId: string; propertyFilter?: { values: (string | number)[]; property: string; } | undefined; bboxFilter?: [number, number, number, number] | [number, number, number, number, number, number] | undefined; layerId?: string | undefined; groups?: string[] | undefined; }, { datasourceId: string; precalc: boolean; display: string; geographyId: string; propertyFilter?: { values: (string | number)[]; property: string; } | undefined; bboxFilter?: [number, number, number, number] | [number, number, number, number, number, number] | undefined; layerId?: string | undefined; groups?: string[] | undefined; }>; export declare const geographiesSchema: z.ZodArray<z.ZodObject<{ /** Unique name of the geography */ geographyId: z.ZodString; /** ID of datasource containing geography boundary */ datasourceId: z.ZodString; /** Display name for the geography */ display: z.ZodString; /** Optional, defines external layer for visualizing the geography */ layerId: z.ZodOptional<z.ZodString>; /** Optional, sub-geography identifier. Useful when you have multiple groupings/levels of geographies and want to select for a specific group */ groups: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; /** Optional, defines whether or not precalc should be run for this geography */ precalc: z.ZodBoolean; /** Required if external datasource used, defines filter to constrain geography features, matches feature property having one or more specific values */ propertyFilter: z.ZodOptional<z.ZodObject<{ property: z.ZodString; values: z.ZodArray<z.ZodUnion<[z.ZodString, z.ZodNumber]>, "many">; }, "strip", z.ZodTypeAny, { values: (string | number)[]; property: string; }, { values: (string | number)[]; property: string; }>>; /** Optional, constrain geography to only features within a bounding box */ bboxFilter: z.ZodOptional<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>>; }, "strip", z.ZodTypeAny, { datasourceId: string; precalc: boolean; display: string; geographyId: string; propertyFilter?: { values: (string | number)[]; property: string; } | undefined; bboxFilter?: [number, number, number, number] | [number, number, number, number, number, number] | undefined; layerId?: string | undefined; groups?: string[] | undefined; }, { datasourceId: string; precalc: boolean; display: string; geographyId: string; propertyFilter?: { values: (string | number)[]; property: string; } | undefined; bboxFilter?: [number, number, number, number] | [number, number, number, number, number, number] | undefined; layerId?: string | undefined; groups?: string[] | undefined; }>, "many">; export type Geography = z.infer<typeof geographySchema>; export type Geographies = z.infer<typeof geographiesSchema>;