/** * Utility functions and helpers. */ /** * Parse a viewpoint string into its constituent parts: longitude, latitude, and * level of detail. This helper makes sure all the parts are valid values and * assigned defaults when things are missing. * * @param viewpoint {string} Expect 3 comma separated number indicating * longitude, latitude, and level of detail, e.g. "-118.4324,34.1234,9". * @returns {viewpointProps} An object made up of {longitude, latitude, * levelOfDetail, scale} */ export interface viewpointProps { longitude: number; latitude: number; levelOfDetail: number; scale: number; } export declare function parseViewpoint(viewpoint: string): viewpointProps; /** * Parse a string looking for the minimum and maximum numbers. It expects either one * number or two numbers separated by a comma. The minimum and maximum values must be * within the range of the default min and max parameters. If only one value is parsed then it * is used for both min and max. If two numbers are parsed the smallest is set to * the min value and the largest to the max. * @param minMax {string} Either 1 or 2 numbers comma separated. * @param defaultMin {number} A number to use as the default value for the minimum if not found, or the smallest minimum value allowed. * @param defaultMax {number} A number to use as the default value for the maximum if not found, or the largest maximum value allowed. * @returns {object} {min, max} */ export interface minMaxProps { min: number; max: number; } export declare function parseMinMax(minMax: string, defaultMin: number, defaultMax: number): minMaxProps; /** * Parse an offset string into its constituent parts: x, y. This helper * makes sure all the parts are valid values and assigned defaults when * things are missing. * * @param offset {string} Expect 2 comma separated numbers indicating x and y * values for a geographic offset, denominated in points. e.g. "-2,3". * @returns {offsetProps} An object made up of {x, y} */ export interface offsetProps { x: number; y: number; } export declare function parseOffset(offset: string): offsetProps; /** * Parse a camera position string into its constituent parts: x, y, z, heading, * and tilt. This helper makes sure all the parts are valid values and * assigned defaults when things are missing. * * @param cameraPosition {string} Expect 5 comma separated numbers indicating * x, y, z, heading, and tilt, e.g. "-118.4324,34.1234,9,93.5,86.9". * @returns {cameraProps} An object made up of {x, y, z, heading, tilt} */ export interface cameraProps { x: number; y: number; z: number; heading: number; tilt: number; } export declare function parseCameraPosition(cameraPosition: string): cameraProps; /** * Helper function to test a string to see if it is a valid ArcGIS Online item ID. * @param itemID {string} A proposed ArcGIS Online item ID. * @returns {boolean} `true` if the input appears to be a valid item ID, otherwise `false`. */ export declare function isValidItemID(itemID: string): boolean; /** * Helper function to test a string to see if it is a valid URL. * @param itemID {string} A proposed URL. * @returns {boolean} `true` if the input appears to be a valid URL, otherwise `false`. */ export declare function isValidURL(url: string): boolean; /** * Verify a proposed search widget position is an expected value. * @param position {string} A search position specification. * @returns {boolean} `true` when OK, `false` when bad. */ export declare function isValidSearchPosition(position: string): boolean; /** * Given a user attribute setting for the UI show setting, return either true to show the UI * or false to hide it. * @param uiSetting {string} The string to check. * @returns {boolean} Either true or false. */ export declare function showUI(uiSetting: string): boolean;