import { DeviceCodeInfo, InteractiveBrowserCredentialInBrowserOptions, InteractiveBrowserCredentialNodeOptions, TokenCredential } from "@azure/identity";
import { KustoConnectionStringBuilderBase } from "./connectionBuilderBase.js";
export declare class KustoConnectionStringBuilder extends KustoConnectionStringBuilderBase {
    static readonly DefaultDatabaseName = "NetDefaultDB";
    static readonly SecretReplacement = "****";
    static withAadUserPasswordAuthentication(connectionString: string, userId: string, password: string, authorityId?: string): KustoConnectionStringBuilder;
    static withAadApplicationKeyAuthentication(connectionString: string, aadAppId: string, appKey: string, authorityId?: string): KustoConnectionStringBuilder;
    static withAadApplicationCertificateAuthentication(connectionString: string, aadAppId: string, applicationCertificatePrivateKey?: string, authorityId?: string, applicationCertificateSendX5c?: boolean, applicationCertificatePrivatePath?: string): KustoConnectionStringBuilder;
    static withAadDeviceAuthentication(connectionString: string, authorityId?: string, deviceCodeCallback?: (response: DeviceCodeInfo) => void): KustoConnectionStringBuilder;
    private static withAadManagedIdentities;
    static withSystemManagedIdentity(connectionString: string, authorityId?: string, timeoutMs?: number): KustoConnectionStringBuilder;
    static withUserManagedIdentity(connectionString: string, msiClientId: string, authorityId?: string, timeoutMs?: number): KustoConnectionStringBuilder;
    static withAzLoginIdentity(connectionString: string, authorityId?: string, timeoutMs?: number): KustoConnectionStringBuilder;
    static withAccessToken(connectionString: string, accessToken: string): KustoConnectionStringBuilder;
    static withTokenProvider(connectionString: string, tokenProvider: () => Promise<string>): KustoConnectionStringBuilder;
    /**
     * Use InteractiveBrowserCredentialNodeOptions in Node.JS and InteractiveBrowserCredentialInBrowserOptions in browser
     * For browser cors issue: you need to visit your app registration and update the redirect URI you're using to the type spa (for "single page application").
     * See: https://github.com/Azure/azure-sdk-for-js/tree/main/sdk/identity/identity/test/manual/interactive-browser-credential
     */
    static withUserPrompt(connectionString: string, options?: InteractiveBrowserCredentialNodeOptions | InteractiveBrowserCredentialInBrowserOptions, timeoutMs?: number): KustoConnectionStringBuilder;
    static withTokenCredential(connectionString: string, credential: TokenCredential): KustoConnectionStringBuilder;
    static fromExisting(other: KustoConnectionStringBuilderBase): KustoConnectionStringBuilderBase;
}
export default KustoConnectionStringBuilder;
//# sourceMappingURL=connectionBuilder.d.ts.map