import { ChannelProvider } from "../core/ChannelProvider";
import { Task } from "../../Task";
/**
 * Gets the authentication token, if any, for the supplied portal.
 * This is a separate method because GVH does not use the
 * IdentityManager to store credentials. The GVH host module
 * overrides this method and uses its own technique.
 * @param portalUrl
 */
export declare function getAuthenticationToken(portalUrl: string): string;
export declare function parsePortalItemUrl(url: string): PortalItemUrlInfo;
export declare function getPortalDataUrl(portalItemUrlInfo: PortalItemUrlInfo, token: string): string;
/**
 * Gets the data from the specified portal item.
 *
 * This method always uses the `"arcgis"` channel to allow us to
 * respect any CORS configuration made using  the Register Cors Url activity.
 * @param itemUrl The data url of the item to get.
 * @param channelProviderType The type of ChannelProvider registered with the application.
 * @param cancellationToken A cancellation token.
 */
export declare function getPortalItem(itemUrl: string, channelProviderType: typeof ChannelProvider, cancellationToken: Task<void>): Promise<any>;
export interface PortalItemUrlInfo {
    portalUrl: string;
    itemId: string;
}
/**
 * This method ensures that the value is enclosed in `{}` characters.
 * @param globalId A globally unique identifier for a feature.
 */
export declare function formatGlobalId(globalId: string): string;
/**
 * When `globalIds` are passed to the ArcGIS REST API, they must be in this format:
 * ["{1A9F8368-F9BB-428B-BB03-F45724362DB5}","{6CE34136-EC3A-40D7-80BF-E1D9BE33812A}"]
 *
 * This method ensures the values are surrounded in curly braces and also adds the quotes, commas and
 * square brackets.
 */
export declare function combineGlobalIds(globalIds: string[]): string;
