import * as pulumi from "@pulumi/pulumi";
/**
 * Creates or updates Pulumi Deployments settings for a stack using a merge operation. If no settings exist, they are created. If settings already exist, the request body is merged with the current settings using the following logic: for each property, start with the current value, remove it if the patch specifies null, or merge the new non-null value with the existing one. Non-object properties (strings, numbers, booleans) are replaced entirely. Settings include source context (git repository URL, branch, directory), operation context (environment variables, pre-run commands, OIDC configuration), executor context, GitHub integration settings, and cache options. Requires a Team Growth or higher subscription. Cannot be used to configure Pulumi Deployments for Terraform stacks.
 */
export declare class Settings extends pulumi.CustomResource {
    /**
     * Get an existing Settings resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): Settings;
    /**
     * Returns true if the given object is an instance of Settings.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is Settings;
    /**
     * The identifier of the agent pool to use for deployments.
     */
    readonly agentPoolID: pulumi.Output<string | undefined>;
    /**
     * Cache options for the deployment.
     */
    readonly cacheOptions: pulumi.Output<any | undefined>;
    /**
     * The executor context defining the execution environment.
     */
    readonly executorContext: pulumi.Output<any | undefined>;
    /**
     * GitHub-specific deployment settings
     */
    readonly gitHub: pulumi.Output<any | undefined>;
    /**
     * The operation context defining pre-run and post-run commands and environment variables.
     */
    readonly operationContext: pulumi.Output<any | undefined>;
    /**
     * The source from which the deployment settings were created.
     */
    readonly source: pulumi.Output<string | undefined>;
    /**
     * The source context defining where the source code is located.
     */
    readonly sourceContext: pulumi.Output<any | undefined>;
    /**
     * A tag to identify the deployment settings configuration.
     */
    readonly tag: pulumi.Output<string | undefined>;
    /**
     * VCS provider settings
     */
    readonly vcs: pulumi.Output<any | undefined>;
    /**
     * The version of the deployment settings.
     */
    readonly version: pulumi.Output<number | undefined>;
    /**
     * Create a Settings resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: SettingsArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a Settings resource.
 */
export interface SettingsArgs {
    /**
     * The identifier of the agent pool to use for deployments.
     */
    agentPoolID?: pulumi.Input<string | undefined>;
    /**
     * Cache options for the deployment.
     */
    cacheOptions?: any | undefined;
    /**
     * The executor context defining the execution environment.
     */
    executorContext?: any | undefined;
    /**
     * GitHub-specific deployment settings
     */
    gitHub?: any | undefined;
    /**
     * The operation context defining pre-run and post-run commands and environment variables.
     */
    operationContext?: any | undefined;
    /**
     * The organization name
     */
    orgName: pulumi.Input<string>;
    /**
     * The project name
     */
    projectName: pulumi.Input<string>;
    /**
     * The source context defining where the source code is located.
     */
    sourceContext?: any | undefined;
    /**
     * The stack name
     */
    stackName: pulumi.Input<string>;
    /**
     * A tag to identify the deployment settings configuration.
     */
    tag?: pulumi.Input<string | undefined>;
    /**
     * VCS provider settings
     */
    vcs?: any | undefined;
}
//# sourceMappingURL=settings.d.ts.map