import * as core from "@terrascript/core";
export interface TargetIpArgs extends core.SchemaArgs {
    ip: string | core.StringOut;
    port?: number | core.NumberOut;
}
export declare class TargetIp extends core.Schema<TargetIpArgs> {
    ip: string | core.StringOut;
    port?: number | core.NumberOut;
}
export interface RuleArgs extends core.ResourceArgs {
    domainName: string | core.StringOut;
    name?: string | core.StringOut;
    resolverEndpointId?: string | core.StringOut;
    ruleType: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    targetIp?: core.Array<TargetIp> | core.ArrayOut<TargetIp>;
}
export declare class Rule extends core.Resource<RuleArgs> {
    arn: string | core.StringOut;
    domainName: string | core.StringOut;
    id: string | core.StringOut;
    name?: string | core.StringOut;
    ownerId: string | core.StringOut;
    resolverEndpointId?: string | core.StringOut;
    ruleType: string | core.StringOut;
    shareStatus: string | core.StringOut;
    tags?: core.Map<string, string> | core.MapOut<core.StringOut>;
    tagsAll?: core.Map<string, string> | core.MapOut<core.StringOut>;
    targetIp?: core.Array<TargetIp> | core.ArrayOut<TargetIp>;
    constructor(name: string, args?: RuleArgs);
    getNamespace(): string;
}
//# sourceMappingURL=rule.d.ts.map