import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Resource Type definition for AWS::ElasticLoadBalancing::LoadBalancer
 */
export declare function getLoadBalancer(args: GetLoadBalancerArgs, opts?: pulumi.InvokeOptions): Promise<GetLoadBalancerResult>;
export interface GetLoadBalancerArgs {
    /**
     * The name of the load balancer. This name must be unique within your set of load balancers for the region.
     */
    loadBalancerName: string;
}
export interface GetLoadBalancerResult {
    /**
     * Information about where and how access logs are stored for the load balancer.
     */
    readonly accessLoggingPolicy?: outputs.elasticloadbalancing.LoadBalancerAccessLoggingPolicy;
    /**
     * Information about a policy for application-controlled session stickiness.
     */
    readonly appCookieStickinessPolicy?: outputs.elasticloadbalancing.LoadBalancerAppCookieStickinessPolicy[];
    /**
     * The Availability Zones for a load balancer in a default VPC. For a load balancer in a nondefault VPC, specify Subnets instead.
     */
    readonly availabilityZones?: string[];
    /**
     * The name of the Route 53 hosted zone that is associated with the load balancer. Internal-facing load balancers.
     */
    readonly canonicalHostedZoneName?: string;
    /**
     * The ID of the Route 53 hosted zone name that is associated with the load balancer.
     */
    readonly canonicalHostedZoneNameId?: string;
    /**
     * If enabled, the load balancer allows existing requests to complete before the load balancer shifts traffic away from a deregistered or unhealthy instance.
     */
    readonly connectionDrainingPolicy?: outputs.elasticloadbalancing.LoadBalancerConnectionDrainingPolicy;
    /**
     * If enabled, the load balancer allows the connections to remain idle (no data is sent over the connection) for the specified duration.
     */
    readonly connectionSettings?: outputs.elasticloadbalancing.LoadBalancerConnectionSettings;
    /**
     * If enabled, the load balancer routes the request traffic evenly across all instances regardless of the Availability Zones.
     */
    readonly crossZone?: boolean;
    /**
     * The DNS name for the load balancer
     */
    readonly dnsName?: string;
    /**
     * The health check settings to use when evaluating the health of your EC2 instances.
     */
    readonly healthCheck?: outputs.elasticloadbalancing.LoadBalancerHealthCheck;
    /**
     * The IDs of the instances for the load balancer.
     */
    readonly instances?: string[];
    /**
     * Information about a policy for duration-based session stickiness.
     */
    readonly lbCookieStickinessPolicy?: outputs.elasticloadbalancing.LoadBalancerLbCookieStickinessPolicy[];
    /**
     * The Listeners for the load balancer. You can specify at most one listener per port.
     */
    readonly listeners?: outputs.elasticloadbalancing.LoadBalancerListeners[];
    /**
     * The policies defined for your Classic Load Balancer. Specify only back-end server policies.
     */
    readonly policies?: outputs.elasticloadbalancing.LoadBalancerPolicies[];
    /**
     * The security groups for the load balancer. Valid only for load balancers in a VPC.
     */
    readonly securityGroups?: string[];
    readonly sourceSecurityGroup?: outputs.elasticloadbalancing.LoadBalancerSourceSecurityGroup;
    /**
     * The IDs of the subnets for the load balancer. You can specify at most one subnet per Availability Zone.
     */
    readonly subnets?: string[];
    /**
     * The tags associated with a load balancer.
     */
    readonly tags?: outputs.Tag[];
}
/**
 * Resource Type definition for AWS::ElasticLoadBalancing::LoadBalancer
 */
export declare function getLoadBalancerOutput(args: GetLoadBalancerOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetLoadBalancerResult>;
export interface GetLoadBalancerOutputArgs {
    /**
     * The name of the load balancer. This name must be unique within your set of load balancers for the region.
     */
    loadBalancerName: pulumi.Input<string>;
}
