@mappable-world/mappable-types 0.0.1

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 (125) hide show
  1. package/README.md +25 -0
  2. package/common/index.d.ts +0 -0
  3. package/common/types/behavior.d.ts +1 -0
  4. package/common/types/bounds.d.ts +17 -0
  5. package/common/types/camera.d.ts +8 -0
  6. package/common/types/coordinates.d.ts +30 -0
  7. package/common/types/data-source-description.d.ts +127 -0
  8. package/common/types/easing-function.d.ts +9 -0
  9. package/common/types/geojson.d.ts +58 -0
  10. package/common/types/graphics.d.ts +36 -0
  11. package/common/types/hotspot.d.ts +13 -0
  12. package/common/types/index.d.ts +20 -0
  13. package/common/types/indoor.d.ts +29 -0
  14. package/common/types/layer-description.d.ts +43 -0
  15. package/common/types/lng-lat.d.ts +14 -0
  16. package/common/types/map.d.ts +1 -0
  17. package/common/types/margin.d.ts +8 -0
  18. package/common/types/projection.d.ts +8 -0
  19. package/common/types/tile-data-source.d.ts +0 -0
  20. package/common/types/utils.d.ts +15 -0
  21. package/common/types/vec2.d.ts +14 -0
  22. package/common/types/world-options.d.ts +4 -0
  23. package/common/types/zoom-strategy.d.ts +1 -0
  24. package/common/types/zoom.d.ts +11 -0
  25. package/imperative/DomContext.d.ts +35 -0
  26. package/imperative/Entities.d.ts +120 -0
  27. package/imperative/MMap/index.d.ts +283 -0
  28. package/imperative/MMap/projection.d.ts +2 -0
  29. package/imperative/MMapCollection/index.d.ts +3 -0
  30. package/imperative/MMapControl/MMapControl.d.ts +45 -0
  31. package/imperative/MMapControl/MMapControlButton.d.ts +55 -0
  32. package/imperative/MMapControl/index.d.ts +2 -0
  33. package/imperative/MMapControls/index.d.ts +43 -0
  34. package/imperative/MMapCopyrights/index.d.ts +44 -0
  35. package/imperative/MMapCoverage/index.d.ts +19 -0
  36. package/imperative/MMapDefaultFeaturesLayer/index.d.ts +41 -0
  37. package/imperative/MMapDefaultSatelliteLayer/index.d.ts +41 -0
  38. package/imperative/MMapDefaultSchemeLayer/index.d.ts +92 -0
  39. package/imperative/MMapEnities.d.ts +18 -0
  40. package/imperative/MMapFeature/index.d.ts +66 -0
  41. package/imperative/MMapFeature/types.d.ts +34 -0
  42. package/imperative/MMapFeatureDataSource/index.d.ts +27 -0
  43. package/imperative/MMapHotspot/index.d.ts +11 -0
  44. package/imperative/MMapLayer/index.d.ts +38 -0
  45. package/imperative/MMapListener/index.d.ts +113 -0
  46. package/imperative/MMapMarker/index.d.ts +98 -0
  47. package/imperative/MMapReactContainer/index.d.ts +37 -0
  48. package/imperative/MMapTileDataSource/index.d.ts +57 -0
  49. package/imperative/config.d.ts +6 -0
  50. package/imperative/fetchConfig.d.ts +18 -0
  51. package/imperative/geolocation.d.ts +10 -0
  52. package/imperative/index.d.ts +26 -0
  53. package/imperative/mappableMaps.d.ts +7 -0
  54. package/imperative/route/driving.d.ts +8 -0
  55. package/imperative/route/index.d.ts +54 -0
  56. package/imperative/route/utils.d.ts +21 -0
  57. package/imperative/search.d.ts +83 -0
  58. package/imperative/suggest.d.ts +37 -0
  59. package/imperative/traverse.d.ts +19 -0
  60. package/imperative/utils/deepFreeze.d.ts +2 -0
  61. package/imperative/utils/errorLogger.d.ts +29 -0
  62. package/imperative/utils/id.d.ts +2 -0
  63. package/imperative/utils/index.d.ts +3 -0
  64. package/imperative/utils/jsonp.d.ts +9 -0
  65. package/imperative/utils/metrics.d.ts +16 -0
  66. package/imperative/utils/pEachChunk.d.ts +2 -0
  67. package/imperative/utils/projections/index.d.ts +1 -0
  68. package/imperative/utils/projections/spherical-mercator.d.ts +47 -0
  69. package/imperative/utils/removeUndefined.d.ts +1 -0
  70. package/imperative/utils/requestCoverage.d.ts +10 -0
  71. package/import.d.ts +28 -0
  72. package/index.d.ts +10 -0
  73. package/init.template.d.ts +33 -0
  74. package/main.d.ts +4 -0
  75. package/modules/controls-extra/MMapOpenMapsButton/index.d.ts +11 -0
  76. package/modules/controls-extra/index.d.ts +1 -0
  77. package/modules/editors/MMapFeatureEditor/MMapCustomDomLayer.d.ts +9 -0
  78. package/modules/editors/MMapFeatureEditor/MMapFeatureEditor.d.ts +55 -0
  79. package/modules/editors/MMapFeatureEditor/MMapFeatureEditorDefaultPoint.d.ts +9 -0
  80. package/modules/editors/MMapFeatureEditor/MMapFeatureEditorDefaultPreviewPoint.d.ts +6 -0
  81. package/modules/editors/MMapFeatureEditor/defaults.d.ts +17 -0
  82. package/modules/editors/MMapFeatureEditor/index.d.ts +2 -0
  83. package/modules/editors/MMapFeatureEditor/interface.d.ts +32 -0
  84. package/modules/editors/MMapFeatureEditor/math.d.ts +6 -0
  85. package/modules/editors/index.d.ts +1 -0
  86. package/modules/index.d.ts +0 -0
  87. package/modules/types.d.ts +7 -0
  88. package/modules/utils/MMapCursor/index.d.ts +28 -0
  89. package/modules/utils/index.d.ts +1 -0
  90. package/package.json +20 -0
  91. package/packages/cartesian-projection/index.d.ts +49 -0
  92. package/packages/clusterer/MMapClusterer/MMapClusterer.d.ts +108 -0
  93. package/packages/clusterer/MMapClusterer/constants.d.ts +1 -0
  94. package/packages/clusterer/MMapClusterer/helpers/throttle.d.ts +17 -0
  95. package/packages/clusterer/MMapClusterer/index.d.ts +3 -0
  96. package/packages/clusterer/MMapClusterer/interface.d.ts +31 -0
  97. package/packages/clusterer/MMapClusterer/methods/clusterByGrid.d.ts +4 -0
  98. package/packages/clusterer/MMapClusterer/methods/index.d.ts +1 -0
  99. package/packages/clusterer/MMapClusterer/react/MMapClusterer.d.ts +44 -0
  100. package/packages/clusterer/index.d.ts +1 -0
  101. package/packages/clusterer/react/index.d.ts +3 -0
  102. package/packages/controls/MMapGeolocationControl/MMapControlSpinner/index.d.ts +6 -0
  103. package/packages/controls/MMapGeolocationControl/index.d.ts +54 -0
  104. package/packages/controls/MMapZoomControl/index.d.ts +45 -0
  105. package/packages/controls/index.d.ts +2 -0
  106. package/packages/controls/react/index.d.ts +3 -0
  107. package/packages/external.d.ts +2 -0
  108. package/packages/hint/MMapHint/index.d.ts +57 -0
  109. package/packages/hint/index.d.ts +1 -0
  110. package/packages/hint/react/index.d.ts +3 -0
  111. package/packages/index.d.ts +0 -0
  112. package/packages/markers/MMapDefaultMarker/index.d.ts +77 -0
  113. package/packages/markers/MMapDefaultMarker/react/MMapDefaultMarker.d.ts +8 -0
  114. package/packages/markers/index.d.ts +1 -0
  115. package/packages/markers/react/index.d.ts +3 -0
  116. package/packages/spherical-mercator-projection/index.d.ts +38 -0
  117. package/packages/types.d.ts +11 -0
  118. package/react/index.d.ts +7 -0
  119. package/reactify/index.d.ts +10 -0
  120. package/reactify/overrides/MMap.d.ts +18 -0
  121. package/reactify/overrides/MMapControl.d.ts +11 -0
  122. package/reactify/overrides/MMapMarker.d.ts +11 -0
  123. package/reactify/overrides/MMapReactContainer.d.ts +6 -0
  124. package/reactify/overrides/index.d.ts +4 -0
  125. package/reactify/reactify.d.ts +43 -0
@@ -0,0 +1,38 @@
1
+ import type { Projection } from "../../common/types";
2
+ /**
3
+ * @class Mercator projection onto a sphere.
4
+ * Used by many mapping services, in particular OpenStreetMap.
5
+ * @name projection.sphericalMercator
6
+ * @augments Projection
7
+ * @static
8
+ * @example
9
+ * ```js
10
+ * const { SphericalMercator } = await mappable.import('@mappable/mappable-spherical-mercator-projection@0.0.1');
11
+ * // Create a map in the spherical Mercator projection
12
+ * const map = new mappable.MMap(document.getElementById('MMapsID'), {
13
+ * location: {
14
+ * center: [37, 55],
15
+ * zoom: 6
16
+ * },
17
+ * projection: new SphericalMercator()
18
+ * });
19
+ * const dataSourceProps = {
20
+ * raster: {
21
+ * type: 'ground',
22
+ * fetchTile: "https://tile.openstreetmap.org/{{z}}/{{y}}/{{x}}"
23
+ * }
24
+ * };
25
+ * // Add osm tiles
26
+ * const dataSource = new mappable.MMapTileDataSource({
27
+ * id: "osmSource",
28
+ * ...dataSourceProps,
29
+ * });
30
+ *
31
+ * const layer = new mappable.MMapLayer({
32
+ * id: "osm",
33
+ * source: "osmSource",
34
+ * type: "ground",
35
+ * });
36
+ * ```
37
+ */
38
+ export declare const SphericalMercator: new () => Projection;
@@ -0,0 +1,11 @@
1
+ import "../import";
2
+ declare module "../import" {
3
+ interface Import {
4
+ (pkg: "@mappable/mappable-cartesian-projection@0.0.1"): Promise<typeof import("./cartesian-projection")>;
5
+ (pkg: "@mappable/mappable-spherical-mercator-projection@0.0.1"): Promise<typeof import("./spherical-mercator-projection")>;
6
+ (pkg: "@mappable/mappable-controls@0.0.1"): Promise<typeof import("./controls")>;
7
+ (pkg: "@mappable/mappable-markers@0.0.1"): Promise<typeof import("./markers")>;
8
+ (pkg: "@mappable/mappable-hint@0.0.1"): Promise<typeof import("./hint")>;
9
+ (pkg: "@mappable/mappable-clusterer@0.0.1"): Promise<typeof import("./clusterer")>;
10
+ }
11
+ }
@@ -0,0 +1,7 @@
1
+ import { Reactify, ReactifiedEntity, ReactifiedModule } from "../reactify";
2
+ type Module = ReactifiedModule<typeof import("../main")>;
3
+ declare const module: Module & {
4
+ reactify: Reactify;
5
+ MMapReactContainer: ReactifiedEntity<typeof import("../imperative/MMapReactContainer").MMapReactContainer>;
6
+ };
7
+ export = module;
@@ -0,0 +1,10 @@
1
+ import type { Reactify, ReactifyEntity, ReactifiedEntity, ReactifyModule, ReactifiedModule } from "./reactify";
2
+ import { overrideKey } from "./reactify";
3
+ type TReact = typeof import("react");
4
+ type TReactDOM = typeof import("react-dom");
5
+ export type { Reactify, ReactifyEntity, ReactifiedEntity, ReactifyModule, ReactifiedModule };
6
+ export type GenericReactify = {
7
+ readonly overrideKey: typeof overrideKey;
8
+ bindTo(React: TReact, ReactDOM: TReactDOM): Reactify;
9
+ };
10
+ export declare const reactify: Readonly<GenericReactify>;
@@ -0,0 +1,18 @@
1
+ import type TReact from "react";
2
+ import type { CustomReactify } from "../reactify";
3
+ import type { GenericRootEntity } from "../../imperative/Entities";
4
+ import type { MMap as MMapI, MMapProps } from "../../imperative/MMap";
5
+ declare global {
6
+ namespace JSX {
7
+ interface IntrinsicElements {
8
+ mappable: TReact.DetailedHTMLProps<TReact.HTMLAttributes<HTMLElement>, HTMLElement>;
9
+ }
10
+ }
11
+ }
12
+ type ComputedMMapProps = MMapProps & {
13
+ container: HTMLElement;
14
+ };
15
+ type MMapContainerProps = TReact.PropsWithChildren<MMapProps>;
16
+ type MMapR = TReact.ForwardRefExoticComponent<MMapContainerProps & TReact.RefAttributes<GenericRootEntity<ComputedMMapProps>>>;
17
+ export declare const MMapReactifyOverride: CustomReactify<MMapI, MMapR>;
18
+ export {};
@@ -0,0 +1,11 @@
1
+ import type TReact from "react";
2
+ import type { CustomReactify } from "../reactify";
3
+ import type { GenericEntity } from "../../imperative/Entities";
4
+ import type { MMapControl as MMapControlI, MMapControlProps } from "../../imperative/MMapControl";
5
+ type ComputedMMapControlProps = MMapControlProps & {
6
+ controlElement: HTMLElement;
7
+ };
8
+ type MMapControlContainerProps = TReact.PropsWithChildren<MMapControlProps>;
9
+ type MMapControlR = TReact.ForwardRefExoticComponent<MMapControlContainerProps & React.RefAttributes<GenericEntity<ComputedMMapControlProps>>>;
10
+ export declare const MMapControlReactifyOverride: CustomReactify<MMapControlI, MMapControlR>;
11
+ export {};
@@ -0,0 +1,11 @@
1
+ import type TReactNamespace from "react";
2
+ import type { CustomReactify } from "../reactify";
3
+ import type { GenericEntity } from "../../imperative/Entities";
4
+ import type { MMapMarker as MMapMarkerI, MMapMarkerProps } from "../../imperative/MMapMarker";
5
+ type ComputedMMapMarkerProps = MMapMarkerProps & {
6
+ markerElement?: HTMLElement;
7
+ };
8
+ type MMapMarkerContainerProps = TReactNamespace.PropsWithChildren<ComputedMMapMarkerProps>;
9
+ type MMapMarkerR = TReactNamespace.ForwardRefExoticComponent<MMapMarkerContainerProps & React.RefAttributes<GenericEntity<ComputedMMapMarkerProps>>>;
10
+ export declare const MMapMarkerReactifyOverride: CustomReactify<MMapMarkerI, MMapMarkerR>;
11
+ export {};
@@ -0,0 +1,6 @@
1
+ import type TReact from "react";
2
+ import type { CustomReactify } from "../reactify";
3
+ import type { MMapReactContainer, MMapReactContainerProps } from "../../imperative/MMapReactContainer";
4
+ type ReactProps<T> = TReact.PropsWithChildren<MMapReactContainerProps<T>>;
5
+ export declare const MMapReactContainerReactifyOverride: CustomReactify<MMapReactContainer, TReact.FC<ReactProps<unknown>>>;
6
+ export {};
@@ -0,0 +1,4 @@
1
+ export * from "./MMap";
2
+ export * from "./MMapControl";
3
+ export * from "./MMapMarker";
4
+ export * from "./MMapReactContainer";
@@ -0,0 +1,43 @@
1
+ import type TReact from "react";
2
+ import type TReactDOM from "react-dom";
3
+ import { GenericEntity, Context, EntityConstructor, EntityProps } from "../imperative/Entities";
4
+ type RefInstance<TEntity extends GenericEntity<unknown>> = React.MutableRefObject<TEntity | undefined>;
5
+ interface ReactParent {
6
+ entityRef: RefInstance<GenericEntity<unknown>>;
7
+ requestReposition(): void;
8
+ positionChild(entity: RefInstance<GenericEntity<unknown>>): number;
9
+ }
10
+ export declare let ReactParent: React.Context<[
11
+ ReactParent
12
+ ] | undefined>;
13
+ export type Reactify = {
14
+ module: ReactifyModule;
15
+ entity: ReactifyEntity;
16
+ };
17
+ export declare const moduleOverrideExport: string;
18
+ export declare const overrideKey: unique symbol;
19
+ export type CustomReactify<TEntity extends GenericEntity<unknown>, TResult> = (ctor: EntityConstructor<TEntity>, params: {
20
+ reactify: {
21
+ module: <TModule extends BaseModule>(module: TModule) => ReactifiedModule<TModule>;
22
+ entity<T extends EntityConstructor<GenericEntity<unknown>> = EntityConstructor<TEntity>>(...args: Parameters<InternalReactifyEntity<T>>): ReturnType<InternalReactifyEntity<T>>;
23
+ context: <TContext extends Context<unknown>>(context?: TContext) => TReact.Context<unknown>;
24
+ };
25
+ ReactParent: typeof ReactParent;
26
+ React: typeof TReact;
27
+ ReactDOM: typeof TReactDOM;
28
+ }) => TResult;
29
+ export type Overrided<TReactResult> = {
30
+ [overrideKey]: CustomReactify<GenericEntity<unknown>, TReactResult>;
31
+ };
32
+ type InternalReactify<TEntity extends GenericEntity<unknown>> = (ctor: EntityConstructor<TEntity>, displayName?: string) => TReact.ForwardRefExoticComponent<TReact.PropsWithoutRef<TReact.PropsWithChildren<EntityProps<TEntity>>> & React.RefAttributes<TEntity | undefined>>;
33
+ type InternalReactifyEntity<TCtor extends EntityConstructor<GenericEntity<unknown>>> = (ctor: TCtor, displayName?: string) => TCtor extends Overrided<infer TResult> ? TResult : ReturnType<InternalReactify<InstanceType<TCtor>>>;
34
+ export type ReactifyEntity = <TCtor extends EntityConstructor<GenericEntity<unknown>>>(...args: Parameters<InternalReactifyEntity<TCtor>>) => ReturnType<InternalReactifyEntity<TCtor>>;
35
+ export type ReactifiedEntity<TCtor extends EntityConstructor<GenericEntity<unknown>>> = ReturnType<InternalReactifyEntity<TCtor>>;
36
+ export type ReactifyModule = <TModule extends BaseModule>(module: TModule) => ReactifiedModule<TModule>;
37
+ export type GetReactContext<TContext extends Context<unknown>> = (context?: TContext | undefined) => React.Context<unknown>;
38
+ export type ReactifiedModule<TModule extends BaseModule> = {
39
+ [Property in keyof TModule]: TModule[Property] extends EntityConstructor<GenericEntity<unknown>> ? ReturnType<InternalReactifyEntity<TModule[Property]>> : TModule[Property] extends typeof Context ? ReturnType<GetReactContext<TModule[Property]>> : TModule[Property];
40
+ };
41
+ export type BaseModule = Record<string | symbol, unknown>;
42
+ export default function createReactify(React: typeof TReact, ReactDOM: typeof TReactDOM): Reactify;
43
+ export {};