import { AwsProviderDefaultTags } from "./constructs/compilation/providers/aws";
declare type Tagging = AwsProviderDefaultTags;
declare enum Cloud {
    AWS = "AWS",
    GCP = "GCP",
    DO = "Digital-Ocean",
    Azure = "Azure"
}
declare type Clouds = keyof typeof Cloud;
declare enum Environment {
    Development = "Development",
    QA = "QA",
    Staging = "Staging",
    UAT = "UAT",
    Production = "Production"
}
declare type Environments = keyof typeof Environment;
interface Input {
    tf: "True";
    cfn: "False";
    cloud: Clouds;
    creator: string;
    service: string;
    organization: string;
    environment: Environments;
}
declare class Default {
    environment: Environments;
    organization: string;
    service: string;
    creator: string;
    cloud: Clouds;
    cfn: "False";
    tf: "True";
    constructor(input: Input);
    map(): {
        Organization: string;
        Environment: string;
        Service: string;
        Creator: string;
        Cloud: string;
        CFN: string;
        TF: string;
    };
}
declare class Tags implements Tagging {
    tags?: {
        [$: string]: string;
    };
    constructor(configuration?: {
        [$: string]: string;
    });
    static initialize(input: Input): Tags;
    static prompt(path: string): Promise<Tags>;
}
declare const Entry: (input: Input) => Tags;
export { Entry, Tags, Default };
declare const _default: {
    Entry: (input: Input) => Tags;
    Tags: typeof Tags;
    Default: typeof Default;
};
export default _default;
export type { Environments, Input, Tagging };
