import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Resource type definition for AWS::AmazonMQ::Broker
 */
export declare function getBroker(args: GetBrokerArgs, opts?: pulumi.InvokeOptions): Promise<GetBrokerResult>;
export interface GetBrokerArgs {
    id: string;
}
export interface GetBrokerResult {
    /**
     * The AMQP endpoints of each broker instance as a list of strings.
     *
     * `amqp+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:5671`
     */
    readonly amqpEndpoints?: string[];
    /**
     * The Amazon Resource Name (ARN) of the Amazon MQ broker.
     *
     * `arn:aws:mq:us-east-2:123456789012:broker:MyBroker:b-1234a5b6-78cd-901e-2fgh-3i45j6k178l9`
     */
    readonly arn?: string;
    /**
     * Enables automatic upgrades to new patch versions for brokers as new versions are released and supported by Amazon MQ. Automatic upgrades occur during the scheduled maintenance window or after a manual broker reboot. Set to `true` by default, if no value is specified.
     *
     * > Must be set to `true` for ActiveMQ brokers version 5.18 and above and for RabbitMQ brokers version 3.13 and above.
     */
    readonly autoMinorVersionUpgrade?: boolean;
    /**
     * The ID of the current actual configuration.
     */
    readonly configurationId?: string;
    /**
     * The revision of the current actual configuration.
     */
    readonly configurationRevision?: string;
    readonly consoleUrls?: string[];
    /**
     * Defines whether this broker is a part of a data replication pair.
     */
    readonly dataReplicationMode?: enums.amazonmq.BrokerDataReplicationMode | string;
    /**
     * The version in use. This may have more precision than the specified EngineVersion.
     */
    readonly engineVersionCurrent?: string;
    /**
     * Required. The broker's instance type.
     */
    readonly hostInstanceType?: string;
    readonly id?: string;
    /**
     * The IP addresses of each broker instance as a list of strings. Does not apply to RabbitMQ brokers.
     *
     * `['198.51.100.2', '203.0.113.9']`
     */
    readonly ipAddresses?: string[];
    /**
     * Optional. The metadata of the LDAP server used to authenticate and authorize connections to the broker. Does not apply to RabbitMQ brokers.
     */
    readonly ldapServerMetadata?: outputs.amazonmq.BrokerLdapServerMetadata;
    /**
     * Enables Amazon CloudWatch logging for brokers.
     */
    readonly logs?: outputs.amazonmq.BrokerLogList;
    /**
     * The parameters that determine the WeeklyStartTime.
     */
    readonly maintenanceWindowStartTime?: outputs.amazonmq.BrokerMaintenanceWindow;
    /**
     * The MQTT endpoints of each broker instance as a list of strings.
     *
     * `mqtt+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:8883`
     */
    readonly mqttEndpoints?: string[];
    /**
     * The OpenWire endpoints of each broker instance as a list of strings.
     *
     * `ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61617`
     */
    readonly openWireEndpoints?: string[];
    /**
     * The ARNs of the resource shares to be associated with the broker.
     */
    readonly resourceShareArns?: string[];
    /**
     * The list of rules (1 minimum, 125 maximum) that authorize connections to brokers.
     */
    readonly securityGroups?: string[];
    /**
     * The STOMP endpoints of each broker instance as a list of strings.
     *
     * `stomp+ssl://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61614`
     */
    readonly stompEndpoints?: string[];
    /**
     * Create tags when creating the broker.
     */
    readonly tags?: outputs.Tag[];
    /**
     * The WSS endpoints of each broker instance as a list of strings.
     *
     * `wss://b-4aada85d-a80c-4be0-9d30-e344a01b921e-1.mq.eu-central-amazonaws.com:61619`
     */
    readonly wssEndpoints?: string[];
}
/**
 * Resource type definition for AWS::AmazonMQ::Broker
 */
export declare function getBrokerOutput(args: GetBrokerOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetBrokerResult>;
export interface GetBrokerOutputArgs {
    id: pulumi.Input<string>;
}
