import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Gets regional Cockpit configuration, including retention limits and defaults for custom and product data sources.
 *
 * Use this data source to validate `retentionDays` values before creating or updating `scaleway.observability.Source` resources.
 *
 * Refer to Cockpit's [product documentation](https://www.scaleway.com/en/docs/observability/cockpit/concepts/) and [API documentation](https://www.scaleway.com/en/developers/api/cockpit/regional-api) for more information.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * const main = scaleway.observability.getConfig({
 *     region: "fr-par",
 * });
 * const metrics = new scaleway.observability.Source("metrics", {
 *     name: "my-metrics",
 *     type: "metrics",
 *     retentionDays: main.then(main => main.customMetricsRetentions?.[0]?.defaultDays),
 * });
 * export const customMetricsRetentionBounds = main.then(main => main.customMetricsRetentions?.[0]);
 * ```
 */
export declare function getConfig(args?: GetConfigArgs, opts?: pulumi.InvokeOptions): Promise<GetConfigResult>;
/**
 * A collection of arguments for invoking getConfig.
 */
export interface GetConfigArgs {
    /**
     * The region to query. Defaults to the region configured in the provider.
     */
    region?: string;
}
/**
 * A collection of values returned by getConfig.
 */
export interface GetConfigResult {
    /**
     * Retention limits and default for custom logs data sources.
     */
    readonly customLogsRetentions: outputs.observability.GetConfigCustomLogsRetention[];
    /**
     * Retention limits and default for custom metrics data sources.
     */
    readonly customMetricsRetentions: outputs.observability.GetConfigCustomMetricsRetention[];
    /**
     * Retention limits and default for custom traces data sources.
     */
    readonly customTracesRetentions: outputs.observability.GetConfigCustomTracesRetention[];
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Retention limits and default for Scaleway product logs data sources.
     */
    readonly productLogsRetentions: outputs.observability.GetConfigProductLogsRetention[];
    /**
     * Retention limits and default for Scaleway product metrics data sources.
     */
    readonly productMetricsRetentions: outputs.observability.GetConfigProductMetricsRetention[];
    readonly region?: string;
}
/**
 * Gets regional Cockpit configuration, including retention limits and defaults for custom and product data sources.
 *
 * Use this data source to validate `retentionDays` values before creating or updating `scaleway.observability.Source` resources.
 *
 * Refer to Cockpit's [product documentation](https://www.scaleway.com/en/docs/observability/cockpit/concepts/) and [API documentation](https://www.scaleway.com/en/developers/api/cockpit/regional-api) for more information.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as scaleway from "@pulumiverse/scaleway";
 *
 * const main = scaleway.observability.getConfig({
 *     region: "fr-par",
 * });
 * const metrics = new scaleway.observability.Source("metrics", {
 *     name: "my-metrics",
 *     type: "metrics",
 *     retentionDays: main.then(main => main.customMetricsRetentions?.[0]?.defaultDays),
 * });
 * export const customMetricsRetentionBounds = main.then(main => main.customMetricsRetentions?.[0]);
 * ```
 */
export declare function getConfigOutput(args?: GetConfigOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetConfigResult>;
/**
 * A collection of arguments for invoking getConfig.
 */
export interface GetConfigOutputArgs {
    /**
     * The region to query. Defaults to the region configured in the provider.
     */
    region?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=getConfig.d.ts.map