/** @packageDocumentation
 * @module MapLayers
 */
import { BeEvent, Listener } from "@itwin/core-bentley";
/** @beta */
export interface MapLayerTokenEndpoint {
    getLoginUrl(stateData?: any): string | undefined;
    getUrl(): string;
}
/** @beta */
export interface MapLayerAuthenticationInfo {
    tokenEndpoint?: MapLayerTokenEndpoint;
}
/** @beta */
export interface MapLayerAccessToken {
    token: string;
}
/** @beta */
export interface MapLayerAccessTokenParams {
    mapLayerUrl: URL;
    userName?: string;
    password?: string;
}
/** @beta */
export interface MapLayerAccessClient {
    getAccessToken(params: MapLayerAccessTokenParams): Promise<MapLayerAccessToken | undefined>;
    getTokenServiceEndPoint?(mapLayerUrl: string): Promise<MapLayerTokenEndpoint | undefined>;
    invalidateToken?(token: MapLayerAccessToken): boolean;
    onOAuthProcessEnd?: BeEvent<Listener>;
}
//# sourceMappingURL=MapLayerAuthentication.d.ts.map