/**
 * This modules contains functions for working with network services.
 *
 * @since 4.20
 */
import type NetworkServiceDescription from "./support/NetworkServiceDescription.js";
import type { RequestOptions } from "../request/types.js";

/**
 * Retrieve a description of the network service.
 *
 * @param url - URL to the ArcGIS Server REST resource that represents a network analysis service.
 * @param apiKey - An authorization string used to access a resource or service
 *                            (see [API keys](https://developers.arcgis.com/documentation/security-and-authentication/api-key-authentication/)).
 * @param requestOptions - Additional [options](https://developers.arcgis.com/javascript/latest/api-reference/esri-request.html#request) to be used for the data request.
 * @returns Returns service description.
 */
export function fetchServiceDescription(url: string, apiKey?: string | null | undefined, requestOptions?: RequestOptions | null): Promise<NetworkServiceDescription>;