@vertigis/viewer-spec
Version:
VertiGIS Viewer Specification
124 lines (123 loc) • 3.65 kB
TypeScript
import type { GeometryUnion } from "@arcgis/core/unionTypes.js";
import type { Feature } from "@vertigis/arcgis-extensions/data/Feature.js";
import type { CountResult } from "@vertigis/arcgis-extensions/tasks/CountResult.js";
import type { AddressLike, GeocodeOptions, Geocoder } from "@vertigis/arcgis-extensions/tasks/geocoding/Geocoder";
import type { Command } from "../Command.js";
import { CommandRegistry } from "../CommandRegistry.js";
import type { Operation } from "../Operation.js";
import { OperationRegistry } from "../OperationRegistry.js";
import type { Features } from "../common.js";
/**
* A type that represents a geocoder or an array of configurable geocoders.
*/
export type GeocodersLike = Geocoder | Geocoder[];
/**
* Arguments for the "geocode.geocode" and "geocode.count" operations.
*/
export interface GeocodeArgs {
/**
* The address to look up.
*/
address: AddressLike;
/**
* Options that affect geocode results.
*/
options: GeocodeOptions;
}
/**
* Arguments for the "geocode.batch-geocode" operation.
*/
export interface BatchGeocodeArgs {
/**
* The addresses to look up.
*/
addresses: AddressLike[];
/**
* Options that affect geocode results.
*/
options: GeocodeOptions;
}
/**
* Arguments for the "geocode.suggest" operation.
*/
export interface SuggestArgs {
/**
* The search text entered by the user.
*/
searchText: string;
/**
* Options that affect geocode results.
*/
options: GeocodeOptions;
}
/**
* Arguments for the "geocode.reverse-geocode" operation.
*/
export interface ReverseGeocodeArgs {
/**
* The location to look up.
*/
geometry: GeometryUnion;
/**
* Options that affect geocode results.
*/
options: GeocodeOptions;
}
/**
* Arguments for the "geocode.update-default-geocoder" operation.
*/
export interface SetActiveGeocodersArgs {
/**
* Geocoders to be activated.
*/
geocoders: GeocodersLike;
}
export declare class GeocodeCommands extends CommandRegistry {
protected readonly _prefix = "geocode";
/**
* Sets given geocoders as active. Web only.
*
* @webOnly
*/
get setActiveGeocoders(): Command<SetActiveGeocodersArgs | GeocodersLike>;
}
export declare class GeocodeOperations extends OperationRegistry {
protected readonly _prefix = "geocode";
/**
* Finds one or more locations corresponding to an address.
*/
get geocode(): Operation<GeocodeArgs, Features>;
/**
* Finds locations corresponding to multiple addresses. The geocoder must
* have the supportsBatchGeocoding capability. Web only.
*
* @webOnly
*/
get batchGeocode(): Operation<BatchGeocodeArgs, Features>;
/**
* Counts the number of locations corresponding to an address.
*/
get count(): Operation<GeocodeArgs, CountResult>;
/**
* Suggests matching addresses to search for based on some input text. The
* geocoder must have the supportsSuggest capability.
*/
get suggest(): Operation<SuggestArgs, string[]>;
/**
* Finds the address at a particular location. The geocoder must have the
* supportsReverseGeocoding capability.
*/
get reverseGeocode(): Operation<ReverseGeocodeArgs, Feature>;
/**
* Returns all configured geocoders including the active ones. Web only.
*
* @webOnly
*/
get getGeocoders(): Operation<void, Geocoder[]>;
/**
* Returns the active configured geocoders. Web only.
*
* @webOnly
*/
get activeGeocoders(): Operation<void, Geocoder[]>;
}