import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Use this data source to access information about an existing Linux Function App.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * const example = azure.appservice.getLinuxFunctionApp({
 *     name: "existing",
 *     resourceGroupName: "existing",
 * });
 * export const id = example.then(example => example.id);
 * ```
 *
 * ## API Providers
 *
 * <!-- This section is generated, changes will be overwritten -->
 * This data source uses the following Azure API Providers:
 *
 * * `Microsoft.Web` - 2023-12-01
 */
export declare function getLinuxFunctionApp(args: GetLinuxFunctionAppArgs, opts?: pulumi.InvokeOptions): Promise<GetLinuxFunctionAppResult>;
/**
 * A collection of arguments for invoking getLinuxFunctionApp.
 */
export interface GetLinuxFunctionAppArgs {
    /**
     * The name which should be used for this Linux Function App.
     */
    name: string;
    /**
     * The name of the Resource Group where the Linux Function App should exist.
     */
    resourceGroupName: string;
}
/**
 * A collection of values returned by getLinuxFunctionApp.
 */
export interface GetLinuxFunctionAppResult {
    /**
     * A map of key-value pairs for [App Settings](https://docs.microsoft.com/azure/azure-functions/functions-app-settings) and custom values.
     */
    readonly appSettings: {
        [key: string]: string;
    };
    /**
     * A `authSettings` block as defined below.
     */
    readonly authSettings: outputs.appservice.GetLinuxFunctionAppAuthSetting[];
    /**
     * A `authSettingsV2` block as defined below.
     */
    readonly authSettingsV2s: outputs.appservice.GetLinuxFunctionAppAuthSettingsV2[];
    /**
     * The current availability state. Possible values are `Normal`, `Limited`, and `DisasterRecoveryMode`.
     */
    readonly availability: string;
    /**
     * A `backup` block as defined below.
     */
    readonly backups: outputs.appservice.GetLinuxFunctionAppBackup[];
    /**
     * Is built in logging enabled?
     */
    readonly builtinLoggingEnabled: boolean;
    /**
     * Are Client Certificates enabled?
     */
    readonly clientCertificateEnabled: boolean;
    /**
     * Paths to exclude when using client certificates, separated by ;
     */
    readonly clientCertificateExclusionPaths: string;
    /**
     * The mode of the Function App's client certificates requirement for incoming requests.
     */
    readonly clientCertificateMode: string;
    /**
     * A `connectionString` blocks as defined below.
     */
    readonly connectionStrings: outputs.appservice.GetLinuxFunctionAppConnectionString[];
    /**
     * Are the settings for linking the Function App to storage suppressed?
     */
    readonly contentShareForceDisabled: boolean;
    /**
     * The identifier used by App Service to perform domain ownership verification via DNS TXT record.
     */
    readonly customDomainVerificationId: string;
    /**
     * The amount of memory in gigabyte-seconds that your application is allowed to consume per day.
     */
    readonly dailyMemoryTimeQuota: number;
    /**
     * The default hostname of the Linux Function App.
     */
    readonly defaultHostname: string;
    /**
     * Is this backup job enabled?
     */
    readonly enabled: boolean;
    /**
     * Are the default FTP Basic Authentication publishing credentials enabled.
     */
    readonly ftpPublishBasicAuthenticationEnabled: boolean;
    /**
     * The runtime version associated with the Function App.
     */
    readonly functionsExtensionVersion: string;
    /**
     * The ID of the App Service Environment used by Function App.
     */
    readonly hostingEnvironmentId: string;
    /**
     * Can the Function App only be accessed via HTTPS?
     */
    readonly httpsOnly: boolean;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * A `identity` block as defined below.
     */
    readonly identities: outputs.appservice.GetLinuxFunctionAppIdentity[];
    /**
     * The Kind value for this Linux Function App.
     */
    readonly kind: string;
    /**
     * The Azure Region where the Linux Function App exists.
     */
    readonly location: string;
    /**
     * The Site Credentials Username used for publishing.
     */
    readonly name: string;
    /**
     * A list of outbound IP addresses. For example `["52.23.25.3", "52.143.43.12"]`
     */
    readonly outboundIpAddressLists: string[];
    /**
     * A comma separated list of outbound IP addresses as a string. For example `52.23.25.3,52.143.43.12`.
     */
    readonly outboundIpAddresses: string;
    /**
     * A list of possible outbound IP addresses, not all of which are necessarily in use. This is a superset of `outboundIpAddressList`. For example `["52.23.25.3", "52.143.43.12"]`.
     */
    readonly possibleOutboundIpAddressLists: string[];
    /**
     * A comma separated list of possible outbound IP addresses as a string. For example `52.23.25.3,52.143.43.12,52.143.43.17`. This is a superset of `outboundIpAddresses`.
     */
    readonly possibleOutboundIpAddresses: string;
    /**
     * Is Public Network Access enabled for this Linux Function App.
     */
    readonly publicNetworkAccessEnabled: boolean;
    readonly resourceGroupName: string;
    /**
     * The ID of the App Service Plan within which this Function App has been created.
     */
    readonly servicePlanId: string;
    /**
     * A `siteConfig` block as defined below.
     */
    readonly siteConfigs: outputs.appservice.GetLinuxFunctionAppSiteConfig[];
    /**
     * A `siteCredential` block as defined below.
     */
    readonly siteCredentials: outputs.appservice.GetLinuxFunctionAppSiteCredential[];
    /**
     * A `stickySettings` block as defined below.
     */
    readonly stickySettings: outputs.appservice.GetLinuxFunctionAppStickySetting[];
    /**
     * The access key used to access the backend storage account for the Function App.
     */
    readonly storageAccountAccessKey: string;
    /**
     * The backend storage account name used by this Function App.
     */
    readonly storageAccountName: string;
    /**
     * The Key Vault Secret ID, including version, that contains the Connection String to connect to the storage account for this Function App.
     */
    readonly storageKeyVaultSecretId: string;
    /**
     * Does the Function App use Managed Identity to access the storage account?
     */
    readonly storageUsesManagedIdentity: boolean;
    /**
     * A mapping of tags which are assigned to the Linux Function App.
     */
    readonly tags: {
        [key: string]: string;
    };
    /**
     * The current usage state. Possible values are `Normal` and `Exceeded`.
     */
    readonly usage: string;
    /**
     * Whether backup and restore operations over the linked virtual network are enabled.
     */
    readonly virtualNetworkBackupRestoreEnabled: boolean;
    /**
     * The Virtual Network Subnet ID used for this IP Restriction.
     */
    readonly virtualNetworkSubnetId: string;
    /**
     * Are the default WebDeploy Basic Authentication publishing credentials enabled.
     */
    readonly webdeployPublishBasicAuthenticationEnabled: boolean;
}
/**
 * Use this data source to access information about an existing Linux Function App.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as azure from "@pulumi/azure";
 *
 * const example = azure.appservice.getLinuxFunctionApp({
 *     name: "existing",
 *     resourceGroupName: "existing",
 * });
 * export const id = example.then(example => example.id);
 * ```
 *
 * ## API Providers
 *
 * <!-- This section is generated, changes will be overwritten -->
 * This data source uses the following Azure API Providers:
 *
 * * `Microsoft.Web` - 2023-12-01
 */
export declare function getLinuxFunctionAppOutput(args: GetLinuxFunctionAppOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetLinuxFunctionAppResult>;
/**
 * A collection of arguments for invoking getLinuxFunctionApp.
 */
export interface GetLinuxFunctionAppOutputArgs {
    /**
     * The name which should be used for this Linux Function App.
     */
    name: pulumi.Input<string>;
    /**
     * The name of the Resource Group where the Linux Function App should exist.
     */
    resourceGroupName: pulumi.Input<string>;
}
//# sourceMappingURL=getLinuxFunctionApp.d.ts.map