import * as pulumi from "@pulumi/pulumi";
import { output as outputs } from "../types";
/**
 * Use this data source to get the list of associations.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as huaweicloud from "@pulumi/huaweicloud";
 *
 * const config = new pulumi.Config();
 * const instanceId = config.requireObject("instanceId");
 * const routeTableId = config.requireObject("routeTableId");
 * const test = huaweicloud.Er.getAssociations({
 *     instanceId: instanceId,
 *     routeTableId: routeTableId,
 * });
 * ```
 */
export declare function getAssociations(args: GetAssociationsArgs, opts?: pulumi.InvokeOptions): Promise<GetAssociationsResult>;
/**
 * A collection of arguments for invoking getAssociations.
 */
export interface GetAssociationsArgs {
    /**
     * Specifies the attachment ID corresponding to the association.
     */
    attachmentId?: string;
    /**
     * Specifies the attachment type corresponding to the association.
     */
    attachmentType?: string;
    /**
     * Specifies the ER instance ID to which the association belongs.
     */
    instanceId: string;
    /**
     * Specifies the region in which to query the data source.
     * If omitted, the provider-level region will be used.
     */
    region?: string;
    /**
     * Specifies the route table ID to which the association belongs.
     */
    routeTableId: string;
    /**
     * Specifies the status of the association. Default value is `available`.
     * The valid values are as follows:
     * + **available**
     * + **failed**
     */
    status?: string;
}
/**
 * A collection of values returned by getAssociations.
 */
export interface GetAssociationsResult {
    /**
     * All associations that match the filter parameters.
     * The associations structure is documented below.
     */
    readonly associations: outputs.Er.GetAssociationsAssociation[];
    readonly attachmentId?: string;
    readonly attachmentType?: string;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    readonly instanceId: string;
    readonly region?: string;
    readonly routeTableId: string;
    /**
     * The current status of the association.
     */
    readonly status?: string;
}
export declare function getAssociationsOutput(args: GetAssociationsOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetAssociationsResult>;
/**
 * A collection of arguments for invoking getAssociations.
 */
export interface GetAssociationsOutputArgs {
    /**
     * Specifies the attachment ID corresponding to the association.
     */
    attachmentId?: pulumi.Input<string>;
    /**
     * Specifies the attachment type corresponding to the association.
     */
    attachmentType?: pulumi.Input<string>;
    /**
     * Specifies the ER instance ID to which the association belongs.
     */
    instanceId: pulumi.Input<string>;
    /**
     * Specifies the region in which to query the data source.
     * If omitted, the provider-level region will be used.
     */
    region?: pulumi.Input<string>;
    /**
     * Specifies the route table ID to which the association belongs.
     */
    routeTableId: pulumi.Input<string>;
    /**
     * Specifies the status of the association. Default value is `available`.
     * The valid values are as follows:
     * + **available**
     * + **failed**
     */
    status?: pulumi.Input<string>;
}
