import * as z from 'zod';
import { Configuration } from 'botbuilder-dialogs-adaptive-runtime-core';
import { PasswordServiceClientCredentialFactory, ServiceClientCredentials } from 'botframework-connector';
declare const TypedConfig: z.ZodObject<{
    MicrosoftAppId: z.ZodUnion<[z.ZodString, z.ZodUndefined]>;
    MicrosoftAppPassword: z.ZodUnion<[z.ZodString, z.ZodUndefined]>;
    MicrosoftAppType: z.ZodUnion<[z.ZodString, z.ZodUndefined]>;
    MicrosoftAppTenantId: z.ZodUnion<[z.ZodString, z.ZodUndefined]>;
}, {
    strict: true;
}, {
    MicrosoftAppId?: string;
    MicrosoftAppPassword?: string;
    MicrosoftAppType?: string;
    MicrosoftAppTenantId?: string;
}>;
/**
 * Contains settings used to configure a [ConfigurationServiceClientCredentialFactory](xref:botbuilder-core.ConfigurationServiceClientCredentialFactory) instance.
 */
export declare type ConfigurationServiceClientCredentialFactoryOptions = z.infer<typeof TypedConfig>;
/**
 * ServiceClientCredentialsFactory that uses a [ConfigurationServiceClientCredentialFactoryOptions](xref:botbuilder-core.ConfigurationServiceClientCredentialFactoryOptions) or a [Configuration](xref:botbuilder-dialogs-adaptive-runtime-core.Configuration) instance to build ServiceClientCredentials with an AppId and App Password.
 */
export declare class ConfigurationServiceClientCredentialFactory extends PasswordServiceClientCredentialFactory {
    private readonly inner;
    /**
     * Initializes a new instance of the [ConfigurationServiceClientCredentialFactory](xref:botbuilder-core.ConfigurationServiceClientCredentialFactory) class.
     *
     * @param factoryOptions A [ConfigurationServiceClientCredentialFactoryOptions](xref:botbuilder-core.ConfigurationServiceClientCredentialFactoryOptions) object.
     */
    constructor(factoryOptions?: ConfigurationServiceClientCredentialFactoryOptions);
    /**
     * @inheritdoc
     */
    isValidAppId(microsoftAppId: string): Promise<boolean>;
    /**
     * @inheritdoc
     */
    isAuthenticationDisabled(): Promise<boolean>;
    /**
     * @inheritdoc
     */
    createCredentials(microsoftAppId: string, audience: string, loginEndpoint: string, validateAuthority: boolean): Promise<ServiceClientCredentials>;
}
/**
 * Creates a new instance of the [ConfigurationServiceClientCredentialFactory](xref:botbuilder-core.ConfigurationServiceClientCredentialFactory) class.
 *
 * @remarks
 * The [Configuration](xref:botbuilder-dialogs-adaptive-runtime-core.Configuration) instance provided to the constructor should
 * have the desired authentication values available at the root, using the properties of [ConfigurationServiceClientCredentialFactoryOptions](xref:botbuilder-core.ConfigurationServiceClientCredentialFactoryOptions) as its keys.
 * @param configuration A [Configuration](xref:botbuilder-dialogs-adaptive-runtime-core.Configuration) instance.
 * @returns A [ConfigurationServiceClientCredentialFactory](xref:botbuilder-core.ConfigurationServiceClientCredentialFactory) instance.
 */
export declare function createServiceClientCredentialFactoryFromConfiguration(configuration: Configuration): ConfigurationServiceClientCredentialFactory;
export {};
//# sourceMappingURL=configurationServiceClientCredentialFactory.d.ts.map