import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * The AWS::Amplify::App resource creates Apps in the Amplify Console. An App is a collection of branches.
 */
export declare function getApp(args: GetAppArgs, opts?: pulumi.InvokeOptions): Promise<GetAppResult>;
export interface GetAppArgs {
    /**
     * ARN for the Amplify App.
     */
    arn: string;
}
export interface GetAppResult {
    /**
     * Unique Id for the Amplify App.
     */
    readonly appId?: string;
    /**
     * Name for the Amplify App.
     */
    readonly appName?: string;
    /**
     * ARN for the Amplify App.
     */
    readonly arn?: string;
    /**
     * The build specification (build spec) for an Amplify app.
     */
    readonly buildSpec?: string;
    /**
     * The cache configuration for the Amplify app. If you don't specify the cache configuration `type` , Amplify uses the default `AMPLIFY_MANAGED` setting.
     */
    readonly cacheConfig?: outputs.amplify.AppCacheConfig;
    /**
     * The Amazon Resource Name (ARN) of the IAM role for an SSR app. The Compute role allows the Amplify Hosting compute service to securely access specific AWS resources based on the role's permissions. For more information about the SSR Compute role, see [Adding an SSR Compute role](https://docs.aws.amazon.com/amplify/latest/userguide/amplify-SSR-compute-role.html) in the *Amplify User Guide* .
     */
    readonly computeRoleArn?: string;
    /**
     * The custom HTTP headers for an Amplify app.
     */
    readonly customHeaders?: string;
    /**
     * The custom rewrite and redirect rules for an Amplify app.
     */
    readonly customRules?: outputs.amplify.AppCustomRule[];
    /**
     * Default domain for the Amplify App.
     */
    readonly defaultDomain?: string;
    /**
     * The description of the Amplify app.
     */
    readonly description?: string;
    /**
     * Automatically disconnect a branch in Amplify Hosting when you delete a branch from your Git repository.
     */
    readonly enableBranchAutoDeletion?: boolean;
    /**
     * The environment variables for the Amplify app.
     *
     * For a list of the environment variables that are accessible to Amplify by default, see [Amplify Environment variables](https://docs.aws.amazon.com/amplify/latest/userguide/amplify-console-environment-variables.html) in the *Amplify Hosting User Guide* .
     */
    readonly environmentVariables?: outputs.amplify.AppEnvironmentVariable[];
    /**
     * AWS Identity and Access Management ( IAM ) service role for the Amazon Resource Name (ARN) of the Amplify app.
     */
    readonly iamServiceRole?: string;
    /**
     * The configuration details that apply to the jobs for an Amplify app.
     */
    readonly jobConfig?: outputs.amplify.AppJobConfig;
    /**
     * The name of the Amplify app.
     */
    readonly name?: string;
    /**
     * The platform for the Amplify app. For a static app, set the platform type to `WEB` . For a dynamic server-side rendered (SSR) app, set the platform type to `WEB_COMPUTE` . For an app requiring Amplify Hosting's original SSR support only, set the platform type to `WEB_DYNAMIC` .
     *
     * If you are deploying an SSG only app with Next.js version 14 or later, you must set the platform type to `WEB_COMPUTE` and set the artifacts `baseDirectory` to `.next` in the application's build settings. For an example of the build specification settings, see [Amplify build settings for a Next.js 14 SSG application](https://docs.aws.amazon.com/amplify/latest/userguide/deploy-nextjs-app.html#build-setting-detection-ssg-14) in the *Amplify Hosting User Guide* .
     */
    readonly platform?: enums.amplify.AppPlatform;
    /**
     * The Git repository for the Amplify app.
     */
    readonly repository?: string;
    /**
     * The tag for an Amplify app.
     */
    readonly tags?: outputs.Tag[];
}
/**
 * The AWS::Amplify::App resource creates Apps in the Amplify Console. An App is a collection of branches.
 */
export declare function getAppOutput(args: GetAppOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAppResult>;
export interface GetAppOutputArgs {
    /**
     * ARN for the Amplify App.
     */
    arn: pulumi.Input<string>;
}
