import * as pulumi from "@pulumi/pulumi";
/**
 * Sentry Key data source.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as sentry from "@pulumi/sentry";
 *
 * // Retrieve a project key by name
 * const default = sentry.getSentryKey({
 *     organization: "my-organization",
 *     project: "web-app",
 *     name: "Default",
 * });
 * // Retrieve the first key of a project
 * const first = sentry.getSentryKey({
 *     organization: "my-organization",
 *     project: "web-app",
 *     first: true,
 * });
 * ```
 */
export declare function getSentryKey(args: GetSentryKeyArgs, opts?: pulumi.InvokeOptions): Promise<GetSentryKeyResult>;
/**
 * A collection of arguments for invoking getSentryKey.
 */
export interface GetSentryKeyArgs {
    /**
     * Boolean flag indicating that we want the first key of the returned keys.
     */
    first?: boolean;
    /**
     * The name of the key to retrieve.
     */
    name?: string;
    /**
     * The slug of the organization the key should be created for.
     */
    organization: string;
    /**
     * The slug of the project the key should be created for.
     */
    project: string;
}
/**
 * A collection of values returned by getSentryKey.
 */
export interface GetSentryKeyResult {
    /**
     * DSN for the Content Security Policy (CSP) for the key.
     */
    readonly dsnCsp: string;
    /**
     * DSN for the key.
     */
    readonly dsnPublic: string;
    /**
     * @deprecated DSN (Deprecated) for the key.
     */
    readonly dsnSecret: string;
    /**
     * Boolean flag indicating that we want the first key of the returned keys.
     */
    readonly first?: boolean;
    /**
     * The provider-assigned unique ID for this managed resource.
     */
    readonly id: string;
    /**
     * Flag indicating the key is active.
     */
    readonly isActive: boolean;
    /**
     * The name of the key to retrieve.
     */
    readonly name?: string;
    /**
     * The slug of the organization the key should be created for.
     */
    readonly organization: string;
    /**
     * The slug of the project the key should be created for.
     */
    readonly project: string;
    /**
     * The ID of the project that the key belongs to.
     */
    readonly projectId: number;
    /**
     * Public key portion of the client key.
     */
    readonly public: string;
    /**
     * Number of events that can be reported within the rate limit window.
     */
    readonly rateLimitCount: number;
    /**
     * Length of time that will be considered when checking the rate limit.
     */
    readonly rateLimitWindow: number;
    /**
     * Secret key portion of the client key.
     */
    readonly secret: string;
}
/**
 * Sentry Key data source.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as sentry from "@pulumi/sentry";
 *
 * // Retrieve a project key by name
 * const default = sentry.getSentryKey({
 *     organization: "my-organization",
 *     project: "web-app",
 *     name: "Default",
 * });
 * // Retrieve the first key of a project
 * const first = sentry.getSentryKey({
 *     organization: "my-organization",
 *     project: "web-app",
 *     first: true,
 * });
 * ```
 */
export declare function getSentryKeyOutput(args: GetSentryKeyOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output<GetSentryKeyResult>;
/**
 * A collection of arguments for invoking getSentryKey.
 */
export interface GetSentryKeyOutputArgs {
    /**
     * Boolean flag indicating that we want the first key of the returned keys.
     */
    first?: pulumi.Input<boolean>;
    /**
     * The name of the key to retrieve.
     */
    name?: pulumi.Input<string>;
    /**
     * The slug of the organization the key should be created for.
     */
    organization: pulumi.Input<string>;
    /**
     * The slug of the project the key should be created for.
     */
    project: pulumi.Input<string>;
}
