import * as pulumi from "@pulumi/pulumi";
import * as inputs from "./types/input";
import * as outputs from "./types/output";
/**
 * Provides a DNSimple certificate data source.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as dnsimple from "@pulumi/dnsimple";
 *
 * const foobar = dnsimple.getCertificate({
 *     domain: dnsimpleDomain,
 *     certificateId: dnsimpleCertificateId,
 * });
 * ```
 */
export declare function getCertificate(args: GetCertificateArgs, opts?: pulumi.InvokeOptions): Promise<GetCertificateResult>;
/**
 * A collection of arguments for invoking getCertificate.
 */
export interface GetCertificateArgs {
    /**
     * The ID of the SSL Certificate
     */
    certificateId: number;
    /**
     * The domain of the SSL Certificate
     */
    domain: string;
    timeouts?: inputs.GetCertificateTimeouts;
}
/**
 * A collection of values returned by getCertificate.
 */
export interface GetCertificateResult {
    /**
     * A list of certificates that make up the chain
     */
    readonly certificateChains: string[];
    readonly certificateId: number;
    readonly domain: string;
    readonly id: string;
    /**
     * The corresponding Private Key for the SSL Certificate
     */
    readonly privateKey: string;
    /**
     * The Root Certificate of the issuing CA
     */
    readonly rootCertificate: string;
    /**
     * The SSL Certificate
     */
    readonly serverCertificate: string;
    readonly timeouts?: outputs.GetCertificateTimeouts;
}
/**
 * Provides a DNSimple certificate data source.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as dnsimple from "@pulumi/dnsimple";
 *
 * const foobar = dnsimple.getCertificate({
 *     domain: dnsimpleDomain,
 *     certificateId: dnsimpleCertificateId,
 * });
 * ```
 */
export declare function getCertificateOutput(args: GetCertificateOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetCertificateResult>;
/**
 * A collection of arguments for invoking getCertificate.
 */
export interface GetCertificateOutputArgs {
    /**
     * The ID of the SSL Certificate
     */
    certificateId: pulumi.Input<number>;
    /**
     * The domain of the SSL Certificate
     */
    domain: pulumi.Input<string>;
    timeouts?: pulumi.Input<inputs.GetCertificateTimeoutsArgs>;
}
