/*!
 * Copyright (C) Microsoft Corporation. All rights reserved.
 */
/**
 * DO NOT MODIFY — This file mirrors the Power Platform API discovery logic
 * from the platform service. Changes must be validated against the original
 * source before being applied.
 */
import type { ClusterCategory } from '../types/ClusterCategory.js';
/**
 * Resolves Power Platform API endpoints for tenant- and environment-scoped URLs.
 *
 * Each cluster category maps to a hostname suffix (e.g. `api.powerplatform.com` for prod).
 * Tenant/environment endpoints encode the identifier into the hostname using hex-encoding
 * conventions defined by the Power Platform API infrastructure.
 */
export declare class PowerPlatformApiDiscovery {
    readonly clusterCategory: ClusterCategory;
    constructor(clusterCategory: ClusterCategory);
    /** Token audience for the Power Platform API in this cluster. */
    getTokenAudience(): string;
    /** Token endpoint host for the Power Platform API in this cluster. */
    getTokenEndpointHost(): string;
    /** Resolve a tenant-scoped endpoint URL. */
    getTenantEndpoint(tenantId: string): string;
    /** Resolve a tenant island-cluster endpoint URL. */
    getTenantIslandClusterEndpoint(tenantId: string): string;
    /** Resolve an environment-scoped endpoint URL. */
    getEnvironmentEndpoint(environmentName: string): string;
    private generateDomain;
    private getHexApiSuffixLength;
    private getHostNameSuffix;
}
//# sourceMappingURL=PowerPlatformApiDiscovery.d.ts.map