1 | import { Coordinate } from './coordinate';
|
2 | import { EventsKey } from './events';
|
3 | import BaseEvent from './events/Event';
|
4 | import Polygon from './geom/Polygon';
|
5 | import BaseObject, { ObjectEvent } from './Object';
|
6 | import { ProjectionLike } from './proj';
|
7 | import Projection from './proj/Projection';
|
8 |
|
9 | export interface Options {
|
10 | tracking?: boolean | undefined;
|
11 | trackingOptions?: PositionOptions | undefined;
|
12 | projection?: ProjectionLike | undefined;
|
13 | }
|
14 | export default class Geolocation extends BaseObject {
|
15 | constructor(opt_options?: Options);
|
16 | /**
|
17 | * Clean up.
|
18 | */
|
19 | disposeInternal(): void;
|
20 | /**
|
21 | * Get the accuracy of the position in meters.
|
22 | */
|
23 | getAccuracy(): number | undefined;
|
24 | /**
|
25 | * Get a geometry of the position accuracy.
|
26 | */
|
27 | getAccuracyGeometry(): Polygon;
|
28 | /**
|
29 | * Get the altitude associated with the position.
|
30 | */
|
31 | getAltitude(): number | undefined;
|
32 | /**
|
33 | * Get the altitude accuracy of the position.
|
34 | */
|
35 | getAltitudeAccuracy(): number | undefined;
|
36 | /**
|
37 | * Get the heading as radians clockwise from North.
|
38 | * Note: depending on the browser, the heading is only defined if the enableHighAccuracy
|
39 | * is set to true in the tracking options.
|
40 | */
|
41 | getHeading(): number | undefined;
|
42 | /**
|
43 | * Get the position of the device.
|
44 | */
|
45 | getPosition(): Coordinate | undefined;
|
46 | /**
|
47 | * Get the projection associated with the position.
|
48 | */
|
49 | getProjection(): Projection | undefined;
|
50 | /**
|
51 | * Get the speed in meters per second.
|
52 | */
|
53 | getSpeed(): number | undefined;
|
54 | /**
|
55 | * Determine if the device location is being tracked.
|
56 | */
|
57 | getTracking(): boolean;
|
58 | /**
|
59 | * Get the tracking options.
|
60 | * See http://www.w3.org/TR/geolocation-API/#position-options.
|
61 | */
|
62 | getTrackingOptions(): PositionOptions | undefined;
|
63 | /**
|
64 | * Set the projection to use for transforming the coordinates.
|
65 | */
|
66 | setProjection(projection: ProjectionLike): void;
|
67 | /**
|
68 | * Enable or disable tracking.
|
69 | */
|
70 | setTracking(tracking: boolean): void;
|
71 | /**
|
72 | * Set the tracking options.
|
73 | * See http://www.w3.org/TR/geolocation-API/#position-options.
|
74 | */
|
75 | setTrackingOptions(options: PositionOptions): void;
|
76 | on(type: string | string[], listener: (p0: any) => any): EventsKey | EventsKey[];
|
77 | once(type: string | string[], listener: (p0: any) => any): EventsKey | EventsKey[];
|
78 | un(type: string | string[], listener: (p0: any) => any): void;
|
79 | on(type: 'change', listener: (evt: BaseEvent) => void): EventsKey;
|
80 | once(type: 'change', listener: (evt: BaseEvent) => void): EventsKey;
|
81 | un(type: 'change', listener: (evt: BaseEvent) => void): void;
|
82 | on(type: 'change:accuracy', listener: (evt: ObjectEvent) => void): EventsKey;
|
83 | once(type: 'change:accuracy', listener: (evt: ObjectEvent) => void): EventsKey;
|
84 | un(type: 'change:accuracy', listener: (evt: ObjectEvent) => void): void;
|
85 | on(type: 'change:accuracyGeometry', listener: (evt: ObjectEvent) => void): EventsKey;
|
86 | once(type: 'change:accuracyGeometry', listener: (evt: ObjectEvent) => void): EventsKey;
|
87 | un(type: 'change:accuracyGeometry', listener: (evt: ObjectEvent) => void): void;
|
88 | on(type: 'change:altitude', listener: (evt: ObjectEvent) => void): EventsKey;
|
89 | once(type: 'change:altitude', listener: (evt: ObjectEvent) => void): EventsKey;
|
90 | un(type: 'change:altitude', listener: (evt: ObjectEvent) => void): void;
|
91 | on(type: 'change:altitudeAccuracy', listener: (evt: ObjectEvent) => void): EventsKey;
|
92 | once(type: 'change:altitudeAccuracy', listener: (evt: ObjectEvent) => void): EventsKey;
|
93 | un(type: 'change:altitudeAccuracy', listener: (evt: ObjectEvent) => void): void;
|
94 | on(type: 'change:heading', listener: (evt: ObjectEvent) => void): EventsKey;
|
95 | once(type: 'change:heading', listener: (evt: ObjectEvent) => void): EventsKey;
|
96 | un(type: 'change:heading', listener: (evt: ObjectEvent) => void): void;
|
97 | on(type: 'change:position', listener: (evt: ObjectEvent) => void): EventsKey;
|
98 | once(type: 'change:position', listener: (evt: ObjectEvent) => void): EventsKey;
|
99 | un(type: 'change:position', listener: (evt: ObjectEvent) => void): void;
|
100 | on(type: 'change:projection', listener: (evt: ObjectEvent) => void): EventsKey;
|
101 | once(type: 'change:projection', listener: (evt: ObjectEvent) => void): EventsKey;
|
102 | un(type: 'change:projection', listener: (evt: ObjectEvent) => void): void;
|
103 | on(type: 'change:speed', listener: (evt: ObjectEvent) => void): EventsKey;
|
104 | once(type: 'change:speed', listener: (evt: ObjectEvent) => void): EventsKey;
|
105 | un(type: 'change:speed', listener: (evt: ObjectEvent) => void): void;
|
106 | on(type: 'change:tracking', listener: (evt: ObjectEvent) => void): EventsKey;
|
107 | once(type: 'change:tracking', listener: (evt: ObjectEvent) => void): EventsKey;
|
108 | un(type: 'change:tracking', listener: (evt: ObjectEvent) => void): void;
|
109 | on(type: 'change:trackingOptions', listener: (evt: ObjectEvent) => void): EventsKey;
|
110 | once(type: 'change:trackingOptions', listener: (evt: ObjectEvent) => void): EventsKey;
|
111 | un(type: 'change:trackingOptions', listener: (evt: ObjectEvent) => void): void;
|
112 | on(type: 'error', listener: (evt: GeolocationError) => void): EventsKey;
|
113 | once(type: 'error', listener: (evt: GeolocationError) => void): EventsKey;
|
114 | un(type: 'error', listener: (evt: GeolocationError) => void): void;
|
115 | on(type: 'error', listener: (evt: BaseEvent) => void): EventsKey;
|
116 | once(type: 'error', listener: (evt: BaseEvent) => void): EventsKey;
|
117 | un(type: 'error', listener: (evt: BaseEvent) => void): void;
|
118 | on(type: 'propertychange', listener: (evt: ObjectEvent) => void): EventsKey;
|
119 | once(type: 'propertychange', listener: (evt: ObjectEvent) => void): EventsKey;
|
120 | un(type: 'propertychange', listener: (evt: ObjectEvent) => void): void;
|
121 | }
|
122 | declare class GeolocationError extends BaseEvent {
|
123 | constructor(error: any);
|
124 | code: number;
|
125 | message: string;
|
126 | }
|