import { aws_route53 as r53, aws_ec2 as ec2, aws_iam as iam } from 'aws-cdk-lib';
import * as constructs from 'constructs';
export interface RemoteVpc {
    readonly vpcId: string;
    readonly vpcRegion: string;
}
export interface CrossRegionVpc {
    readonly vpcIdSSmParamter: string;
    readonly vpcRegion: string;
}
export interface CentralAccount {
    readonly accountId: string;
    readonly roleArn: string;
}
export interface EnterpriseZoneProps {
    readonly enterpriseDomainName: string;
    readonly localVpc: ec2.Vpc;
    readonly remoteVpc: RemoteVpc[];
    readonly crossRegionVpc?: CrossRegionVpc[];
    readonly centralAccount: CentralAccount;
}
/**
 * create forwarding rules and associate them with a vpc.
 */
export declare class EnterpriseZone extends constructs.Construct {
    readonly privateZone: r53.PrivateHostedZone;
    constructor(scope: constructs.Construct, id: string, props: EnterpriseZoneProps);
}
export interface CentralAccountAssnRoleProps {
    readonly vpc: ec2.Vpc;
    readonly orgId: string;
    readonly roleName?: string | undefined;
}
export declare class CentralAccountAssnRole extends constructs.Construct {
    readonly assnRole: iam.Role;
    constructor(scope: constructs.Construct, id: string, props: CentralAccountAssnRoleProps);
}
