@infra-blocks/zod-utils 0.3.0 → 0.4.0-alpha.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (98) hide show
  1. package/README.md +150 -10
  2. package/lib/cjs/geojson/base.d.ts +8 -0
  3. package/lib/cjs/geojson/base.js +9 -0
  4. package/lib/cjs/geojson/base.js.map +1 -0
  5. package/lib/cjs/geojson/bounding-box.d.ts +5 -0
  6. package/lib/cjs/geojson/bounding-box.js +27 -0
  7. package/lib/cjs/geojson/bounding-box.js.map +1 -0
  8. package/lib/cjs/geojson/coordinate.d.ts +5 -0
  9. package/lib/cjs/geojson/coordinate.js +16 -0
  10. package/lib/cjs/geojson/coordinate.js.map +1 -0
  11. package/lib/cjs/geojson/feature-collection.d.ts +657 -0
  12. package/lib/cjs/geojson/feature-collection.js +15 -0
  13. package/lib/cjs/geojson/feature-collection.js.map +1 -0
  14. package/lib/cjs/geojson/feature.d.ts +397 -0
  15. package/lib/cjs/geojson/feature.js +18 -0
  16. package/lib/cjs/geojson/feature.js.map +1 -0
  17. package/lib/cjs/geojson/geojson.d.ts +1193 -0
  18. package/lib/cjs/geojson/geojson.js +13 -0
  19. package/lib/cjs/geojson/geojson.js.map +1 -0
  20. package/lib/cjs/geojson/geometry.d.ts +155 -0
  21. package/lib/cjs/geojson/geometry.js +33 -0
  22. package/lib/cjs/geojson/geometry.js.map +1 -0
  23. package/lib/cjs/geojson/index.d.ts +622 -0
  24. package/lib/cjs/geojson/index.js +34 -0
  25. package/lib/cjs/geojson/index.js.map +1 -0
  26. package/lib/cjs/geojson/line-string.d.ts +29 -0
  27. package/lib/cjs/geojson/line-string.js +15 -0
  28. package/lib/cjs/geojson/line-string.js.map +1 -0
  29. package/lib/cjs/geojson/multi-line-string.d.ts +29 -0
  30. package/lib/cjs/geojson/multi-line-string.js +15 -0
  31. package/lib/cjs/geojson/multi-line-string.js.map +1 -0
  32. package/lib/cjs/geojson/multi-point.d.ts +29 -0
  33. package/lib/cjs/geojson/multi-point.js +15 -0
  34. package/lib/cjs/geojson/multi-point.js.map +1 -0
  35. package/lib/cjs/geojson/multi-polygon.d.ts +29 -0
  36. package/lib/cjs/geojson/multi-polygon.js +15 -0
  37. package/lib/cjs/geojson/multi-polygon.js.map +1 -0
  38. package/lib/cjs/geojson/point.d.ts +29 -0
  39. package/lib/cjs/geojson/point.js +15 -0
  40. package/lib/cjs/geojson/point.js.map +1 -0
  41. package/lib/cjs/geojson/polygon.d.ts +29 -0
  42. package/lib/cjs/geojson/polygon.js +15 -0
  43. package/lib/cjs/geojson/polygon.js.map +1 -0
  44. package/lib/cjs/geojson/types.d.ts +12 -0
  45. package/lib/cjs/geojson/types.js +3 -0
  46. package/lib/cjs/geojson/types.js.map +1 -0
  47. package/lib/cjs/index.d.ts +608 -0
  48. package/lib/cjs/index.js +2 -0
  49. package/lib/cjs/index.js.map +1 -1
  50. package/lib/esm/geojson/base.d.ts +8 -0
  51. package/lib/esm/geojson/base.js +6 -0
  52. package/lib/esm/geojson/base.js.map +1 -0
  53. package/lib/esm/geojson/bounding-box.d.ts +5 -0
  54. package/lib/esm/geojson/bounding-box.js +23 -0
  55. package/lib/esm/geojson/bounding-box.js.map +1 -0
  56. package/lib/esm/geojson/coordinate.d.ts +5 -0
  57. package/lib/esm/geojson/coordinate.js +12 -0
  58. package/lib/esm/geojson/coordinate.js.map +1 -0
  59. package/lib/esm/geojson/feature-collection.d.ts +657 -0
  60. package/lib/esm/geojson/feature-collection.js +11 -0
  61. package/lib/esm/geojson/feature-collection.js.map +1 -0
  62. package/lib/esm/geojson/feature.d.ts +397 -0
  63. package/lib/esm/geojson/feature.js +14 -0
  64. package/lib/esm/geojson/feature.js.map +1 -0
  65. package/lib/esm/geojson/geojson.d.ts +1193 -0
  66. package/lib/esm/geojson/geojson.js +9 -0
  67. package/lib/esm/geojson/geojson.js.map +1 -0
  68. package/lib/esm/geojson/geometry.d.ts +155 -0
  69. package/lib/esm/geojson/geometry.js +28 -0
  70. package/lib/esm/geojson/geometry.js.map +1 -0
  71. package/lib/esm/geojson/index.d.ts +622 -0
  72. package/lib/esm/geojson/index.js +31 -0
  73. package/lib/esm/geojson/index.js.map +1 -0
  74. package/lib/esm/geojson/line-string.d.ts +29 -0
  75. package/lib/esm/geojson/line-string.js +11 -0
  76. package/lib/esm/geojson/line-string.js.map +1 -0
  77. package/lib/esm/geojson/multi-line-string.d.ts +29 -0
  78. package/lib/esm/geojson/multi-line-string.js +11 -0
  79. package/lib/esm/geojson/multi-line-string.js.map +1 -0
  80. package/lib/esm/geojson/multi-point.d.ts +29 -0
  81. package/lib/esm/geojson/multi-point.js +11 -0
  82. package/lib/esm/geojson/multi-point.js.map +1 -0
  83. package/lib/esm/geojson/multi-polygon.d.ts +29 -0
  84. package/lib/esm/geojson/multi-polygon.js +11 -0
  85. package/lib/esm/geojson/multi-polygon.js.map +1 -0
  86. package/lib/esm/geojson/point.d.ts +29 -0
  87. package/lib/esm/geojson/point.js +11 -0
  88. package/lib/esm/geojson/point.js.map +1 -0
  89. package/lib/esm/geojson/polygon.d.ts +29 -0
  90. package/lib/esm/geojson/polygon.js +11 -0
  91. package/lib/esm/geojson/polygon.js.map +1 -0
  92. package/lib/esm/geojson/types.d.ts +12 -0
  93. package/lib/esm/geojson/types.js +2 -0
  94. package/lib/esm/geojson/types.js.map +1 -0
  95. package/lib/esm/index.d.ts +608 -0
  96. package/lib/esm/index.js +2 -0
  97. package/lib/esm/index.js.map +1 -1
  98. package/package.json +8 -1
@@ -0,0 +1,31 @@
1
+ import { boundingBox } from "./bounding-box.js";
2
+ import { featureCollection, } from "./feature-collection.js";
3
+ import { feature } from "./feature.js";
4
+ import { geojson } from "./geojson.js";
5
+ import { geometryCollection } from "./geometry.js";
6
+ import { lineString } from "./line-string.js";
7
+ import { multiLineString, } from "./multi-line-string.js";
8
+ import { multiPoint } from "./multi-point.js";
9
+ import { multiPolygon } from "./multi-polygon.js";
10
+ import { point } from "./point.js";
11
+ import { polygon } from "./polygon.js";
12
+ import { coordinate } from "./coordinate.js";
13
+ const module = (() => {
14
+ function impl() {
15
+ return geojson();
16
+ }
17
+ impl.boundingBox = boundingBox;
18
+ impl.feature = feature;
19
+ impl.featureCollection = featureCollection;
20
+ impl.geometryCollection = geometryCollection;
21
+ impl.lineString = lineString;
22
+ impl.multiLineString = multiLineString;
23
+ impl.multiPoint = multiPoint;
24
+ impl.multiPolygon = multiPolygon;
25
+ impl.point = point;
26
+ impl.polygon = polygon;
27
+ impl.coordinate = coordinate;
28
+ return impl;
29
+ })();
30
+ export { module as geojson };
31
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/geojson/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAsB,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACpE,OAAO,EACL,iBAAiB,GAElB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAkB,OAAO,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAW,OAAO,EAAE,MAAM,cAAc,CAAC;AAChD,OAAO,EAAmB,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACpE,OAAO,EAAqB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAEL,eAAe,GAChB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAqB,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAuB,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvE,OAAO,EAAgB,KAAK,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAkB,OAAO,EAAE,MAAM,cAAc,CAAC;AACvD,OAAO,EAAqB,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAEhE,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE;IACnB,SAAS,IAAI;QACX,OAAO,OAAO,EAAE,CAAC;IACnB,CAAC;IACD,IAAI,CAAC,WAAW,GAAG,WAAW,CAAC;IAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC3C,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC7C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC7B,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACvC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC7B,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACjC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACnB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACvB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC7B,OAAO,IAAI,CAAC;AACd,CAAC,CAAC,EAAE,CAAC;AAEL,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { z } from "zod";
2
+ declare const lineStringSchema: z.ZodObject<{
3
+ bbox: 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>]>>;
4
+ type: z.ZodLiteral<"LineString">;
5
+ coordinates: z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">;
6
+ }, "strict", z.ZodTypeAny, {
7
+ type: "LineString";
8
+ coordinates: ([number, number] | [number, number, number])[];
9
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
10
+ }, {
11
+ type: "LineString";
12
+ coordinates: ([number, number] | [number, number, number])[];
13
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
14
+ }>;
15
+ export type GeoJsonLineString = z.infer<typeof lineStringSchema>;
16
+ export declare function lineString(): z.ZodObject<{
17
+ bbox: 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>]>>;
18
+ type: z.ZodLiteral<"LineString">;
19
+ coordinates: z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">;
20
+ }, "strict", z.ZodTypeAny, {
21
+ type: "LineString";
22
+ coordinates: ([number, number] | [number, number, number])[];
23
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
24
+ }, {
25
+ type: "LineString";
26
+ coordinates: ([number, number] | [number, number, number])[];
27
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
28
+ }>;
29
+ export {};
@@ -0,0 +1,11 @@
1
+ import { z } from "zod";
2
+ import { schemaWithBoundingBox } from "./base.js";
3
+ import { coordinate } from "./coordinate.js";
4
+ const lineStringSchema = schemaWithBoundingBox.extend({
5
+ type: z.literal("LineString"),
6
+ coordinates: z.array(coordinate()).min(2),
7
+ });
8
+ export function lineString() {
9
+ return lineStringSchema;
10
+ }
11
+ //# sourceMappingURL=line-string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"line-string.js","sourceRoot":"","sources":["../../../src/geojson/line-string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACpD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7B,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAC1C,CAAC,CAAC;AAIH,MAAM,UAAU,UAAU;IACxB,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { z } from "zod";
2
+ declare const multiLineStringSchema: z.ZodObject<{
3
+ bbox: 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>]>>;
4
+ type: z.ZodLiteral<"MultiLineString">;
5
+ coordinates: z.ZodArray<z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">, "many">;
6
+ }, "strict", z.ZodTypeAny, {
7
+ type: "MultiLineString";
8
+ coordinates: ([number, number] | [number, number, number])[][];
9
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
10
+ }, {
11
+ type: "MultiLineString";
12
+ coordinates: ([number, number] | [number, number, number])[][];
13
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
14
+ }>;
15
+ export type GeoJsonMultiLineString = z.infer<typeof multiLineStringSchema>;
16
+ export declare function multiLineString(): z.ZodObject<{
17
+ bbox: 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>]>>;
18
+ type: z.ZodLiteral<"MultiLineString">;
19
+ coordinates: z.ZodArray<z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">, "many">;
20
+ }, "strict", z.ZodTypeAny, {
21
+ type: "MultiLineString";
22
+ coordinates: ([number, number] | [number, number, number])[][];
23
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
24
+ }, {
25
+ type: "MultiLineString";
26
+ coordinates: ([number, number] | [number, number, number])[][];
27
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
28
+ }>;
29
+ export {};
@@ -0,0 +1,11 @@
1
+ import { z } from "zod";
2
+ import { schemaWithBoundingBox } from "./base.js";
3
+ import { lineString } from "./line-string.js";
4
+ const multiLineStringSchema = schemaWithBoundingBox.extend({
5
+ type: z.literal("MultiLineString"),
6
+ coordinates: z.array(lineString().shape.coordinates),
7
+ });
8
+ export function multiLineString() {
9
+ return multiLineStringSchema;
10
+ }
11
+ //# sourceMappingURL=multi-line-string.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-line-string.js","sourceRoot":"","sources":["../../../src/geojson/multi-line-string.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,qBAAqB,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACzD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,iBAAiB,CAAC;IAClC,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC;CACrD,CAAC,CAAC;AAIH,MAAM,UAAU,eAAe;IAC7B,OAAO,qBAAqB,CAAC;AAC/B,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { z } from "zod";
2
+ declare const multiPointSchema: z.ZodObject<{
3
+ bbox: 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>]>>;
4
+ type: z.ZodLiteral<"MultiPoint">;
5
+ coordinates: z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">;
6
+ }, "strict", z.ZodTypeAny, {
7
+ type: "MultiPoint";
8
+ coordinates: ([number, number] | [number, number, number])[];
9
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
10
+ }, {
11
+ type: "MultiPoint";
12
+ coordinates: ([number, number] | [number, number, number])[];
13
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
14
+ }>;
15
+ export type GeoJsonMultiPoint = z.infer<typeof multiPointSchema>;
16
+ export declare function multiPoint(): z.ZodObject<{
17
+ bbox: 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>]>>;
18
+ type: z.ZodLiteral<"MultiPoint">;
19
+ coordinates: z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">;
20
+ }, "strict", z.ZodTypeAny, {
21
+ type: "MultiPoint";
22
+ coordinates: ([number, number] | [number, number, number])[];
23
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
24
+ }, {
25
+ type: "MultiPoint";
26
+ coordinates: ([number, number] | [number, number, number])[];
27
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
28
+ }>;
29
+ export {};
@@ -0,0 +1,11 @@
1
+ import { z } from "zod";
2
+ import { schemaWithBoundingBox } from "./base.js";
3
+ import { point } from "./point.js";
4
+ const multiPointSchema = schemaWithBoundingBox.extend({
5
+ type: z.literal("MultiPoint"),
6
+ coordinates: z.array(point().shape.coordinates),
7
+ });
8
+ export function multiPoint() {
9
+ return multiPointSchema;
10
+ }
11
+ //# sourceMappingURL=multi-point.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-point.js","sourceRoot":"","sources":["../../../src/geojson/multi-point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEnC,MAAM,gBAAgB,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACpD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,YAAY,CAAC;IAC7B,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC;CAChD,CAAC,CAAC;AAIH,MAAM,UAAU,UAAU;IACxB,OAAO,gBAAgB,CAAC;AAC1B,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { z } from "zod";
2
+ declare const multiPolygonSchema: z.ZodObject<{
3
+ bbox: 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>]>>;
4
+ type: z.ZodLiteral<"MultiPolygon">;
5
+ coordinates: z.ZodArray<z.ZodArray<z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">, "many">, "many">;
6
+ }, "strict", z.ZodTypeAny, {
7
+ type: "MultiPolygon";
8
+ coordinates: ([number, number] | [number, number, number])[][][];
9
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
10
+ }, {
11
+ type: "MultiPolygon";
12
+ coordinates: ([number, number] | [number, number, number])[][][];
13
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
14
+ }>;
15
+ export type GeoJsonMultiPolygon = z.infer<typeof multiPolygonSchema>;
16
+ export declare function multiPolygon(): z.ZodObject<{
17
+ bbox: 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>]>>;
18
+ type: z.ZodLiteral<"MultiPolygon">;
19
+ coordinates: z.ZodArray<z.ZodArray<z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">, "many">, "many">;
20
+ }, "strict", z.ZodTypeAny, {
21
+ type: "MultiPolygon";
22
+ coordinates: ([number, number] | [number, number, number])[][][];
23
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
24
+ }, {
25
+ type: "MultiPolygon";
26
+ coordinates: ([number, number] | [number, number, number])[][][];
27
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
28
+ }>;
29
+ export {};
@@ -0,0 +1,11 @@
1
+ import { z } from "zod";
2
+ import { schemaWithBoundingBox } from "./base.js";
3
+ import { polygon } from "./polygon.js";
4
+ const multiPolygonSchema = schemaWithBoundingBox.extend({
5
+ type: z.literal("MultiPolygon"),
6
+ coordinates: z.array(polygon().shape.coordinates),
7
+ });
8
+ export function multiPolygon() {
9
+ return multiPolygonSchema;
10
+ }
11
+ //# sourceMappingURL=multi-polygon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multi-polygon.js","sourceRoot":"","sources":["../../../src/geojson/multi-polygon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,kBAAkB,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACtD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,cAAc,CAAC;IAC/B,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,CAAC,WAAW,CAAC;CAClD,CAAC,CAAC;AAIH,MAAM,UAAU,YAAY;IAC1B,OAAO,kBAAkB,CAAC;AAC5B,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { z } from "zod";
2
+ declare const pointSchema: z.ZodObject<{
3
+ bbox: 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>]>>;
4
+ type: z.ZodLiteral<"Point">;
5
+ coordinates: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>;
6
+ }, "strict", z.ZodTypeAny, {
7
+ type: "Point";
8
+ coordinates: [number, number] | [number, number, number];
9
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
10
+ }, {
11
+ type: "Point";
12
+ coordinates: [number, number] | [number, number, number];
13
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
14
+ }>;
15
+ export type GeoJsonPoint = z.infer<typeof pointSchema>;
16
+ export declare function point(): z.ZodObject<{
17
+ bbox: 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>]>>;
18
+ type: z.ZodLiteral<"Point">;
19
+ coordinates: z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>;
20
+ }, "strict", z.ZodTypeAny, {
21
+ type: "Point";
22
+ coordinates: [number, number] | [number, number, number];
23
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
24
+ }, {
25
+ type: "Point";
26
+ coordinates: [number, number] | [number, number, number];
27
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
28
+ }>;
29
+ export {};
@@ -0,0 +1,11 @@
1
+ import { z } from "zod";
2
+ import { schemaWithBoundingBox } from "./base.js";
3
+ import { coordinate } from "./coordinate.js";
4
+ const pointSchema = schemaWithBoundingBox.extend({
5
+ type: z.literal("Point"),
6
+ coordinates: coordinate(),
7
+ });
8
+ export function point() {
9
+ return pointSchema;
10
+ }
11
+ //# sourceMappingURL=point.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"point.js","sourceRoot":"","sources":["../../../src/geojson/point.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,WAAW,GAAG,qBAAqB,CAAC,MAAM,CAAC;IAC/C,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC;IACxB,WAAW,EAAE,UAAU,EAAE;CAC1B,CAAC,CAAC;AAIH,MAAM,UAAU,KAAK;IACnB,OAAO,WAAW,CAAC;AACrB,CAAC"}
@@ -0,0 +1,29 @@
1
+ import { z } from "zod";
2
+ declare const polygonSchema: z.ZodObject<{
3
+ bbox: 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>]>>;
4
+ type: z.ZodLiteral<"Polygon">;
5
+ coordinates: z.ZodArray<z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">, "many">;
6
+ }, "strict", z.ZodTypeAny, {
7
+ type: "Polygon";
8
+ coordinates: ([number, number] | [number, number, number])[][];
9
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
10
+ }, {
11
+ type: "Polygon";
12
+ coordinates: ([number, number] | [number, number, number])[][];
13
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
14
+ }>;
15
+ export type GeoJsonPolygon = z.infer<typeof polygonSchema>;
16
+ export declare function polygon(): z.ZodObject<{
17
+ bbox: 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>]>>;
18
+ type: z.ZodLiteral<"Polygon">;
19
+ coordinates: z.ZodArray<z.ZodArray<z.ZodUnion<[z.ZodTuple<[z.ZodNumber, z.ZodNumber], null>, z.ZodTuple<[z.ZodNumber, z.ZodNumber, z.ZodNumber], null>]>, "many">, "many">;
20
+ }, "strict", z.ZodTypeAny, {
21
+ type: "Polygon";
22
+ coordinates: ([number, number] | [number, number, number])[][];
23
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
24
+ }, {
25
+ type: "Polygon";
26
+ coordinates: ([number, number] | [number, number, number])[][];
27
+ bbox?: [number, number, number, number] | [number, number, number, number, number, number] | undefined;
28
+ }>;
29
+ export {};
@@ -0,0 +1,11 @@
1
+ import { z } from "zod";
2
+ import { schemaWithBoundingBox } from "./base.js";
3
+ import { coordinate } from "./coordinate.js";
4
+ const polygonSchema = schemaWithBoundingBox.extend({
5
+ type: z.literal("Polygon"),
6
+ coordinates: z.array(z.array(coordinate())),
7
+ });
8
+ export function polygon() {
9
+ return polygonSchema;
10
+ }
11
+ //# sourceMappingURL=polygon.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"polygon.js","sourceRoot":"","sources":["../../../src/geojson/polygon.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAE7C,MAAM,aAAa,GAAG,qBAAqB,CAAC,MAAM,CAAC;IACjD,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC;IAC1B,WAAW,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,CAAC;CAC5C,CAAC,CAAC;AAIH,MAAM,UAAU,OAAO;IACrB,OAAO,aAAa,CAAC;AACvB,CAAC"}
@@ -0,0 +1,12 @@
1
+ export type { GeoJsonBoundingBox } from "./bounding-box.js";
2
+ export type { GeoJsonCoordinate } from "./coordinate.js";
3
+ export type { GeoJsonFeature } from "./feature.js";
4
+ export type { GeoJsonFeatureCollection } from "./feature-collection.js";
5
+ export type { GeoJson } from "./geojson.js";
6
+ export type { GeoJsonGeometry } from "./geometry.js";
7
+ export type { GeoJsonLineString } from "./line-string.js";
8
+ export type { GeoJsonMultiLineString } from "./multi-line-string.js";
9
+ export type { GeoJsonMultiPoint } from "./multi-point.js";
10
+ export type { GeoJsonMultiPolygon } from "./multi-polygon.js";
11
+ export type { GeoJsonPoint } from "./point.js";
12
+ export type { GeoJsonPolygon } from "./polygon.js";
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/geojson/types.ts"],"names":[],"mappings":""}