import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * Use this data source to get a project, folder, organization or billing account logging sink details.
 * To get more information about Service, see:
 *
 * [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/sinks)
 *
 * ## Example Usage
 *
 * ### Retrieve Project Logging Sink Basic
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const project_sink = gcp.logging.getSink({
 *     id: "projects/0123456789/sinks/my-sink-name",
 * });
 * ```
 */
export declare function getSink(args: GetSinkArgs, opts?: pulumi.InvokeOptions): Promise<GetSinkResult>;
/**
 * A collection of arguments for invoking getSink.
 */
export interface GetSinkArgs {
    /**
     * The identifier for the resource.
     * Examples:
     *
     * - `projects/[PROJECT_ID]/sinks/[SINK_NAME]`
     * - `organizations/[ORGANIZATION_ID]/sinks/[SINK_NAME]`
     * -  `billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_NAME]`
     * - `folders/[FOLDER_ID]/sinks/[SINK_NAME]`
     */
    id: string;
}
/**
 * A collection of values returned by getSink.
 */
export interface GetSinkResult {
    /**
     * Options that affect sinks exporting data to BigQuery. Structure is documented below.
     */
    readonly bigqueryOptions: outputs.logging.GetSinkBigqueryOption[];
    /**
     * A description of this exclusion.
     */
    readonly description: string;
    /**
     * The destination of the sink (or, in other words, where logs are written to).
     */
    readonly destination: string;
    /**
     * Whether this exclusion is disabled and it does not exclude any log entries.
     */
    readonly disabled: boolean;
    /**
     * Log entries that match any of the exclusion filters are not exported. Structure is documented below.
     */
    readonly exclusions: outputs.logging.GetSinkExclusion[];
    /**
     * An advanced logs filter that matches the log entries to be excluded.
     */
    readonly filter: string;
    readonly id: string;
    /**
     * A client-assigned identifier, such as `load-balancer-exclusion`.
     */
    readonly name: string;
    /**
     * The identity associated with this sink. This identity must be granted write access to the configured `destination`.
     */
    readonly writerIdentity: string;
}
/**
 * Use this data source to get a project, folder, organization or billing account logging sink details.
 * To get more information about Service, see:
 *
 * [API documentation](https://cloud.google.com/logging/docs/reference/v2/rest/v2/sinks)
 *
 * ## Example Usage
 *
 * ### Retrieve Project Logging Sink Basic
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const project_sink = gcp.logging.getSink({
 *     id: "projects/0123456789/sinks/my-sink-name",
 * });
 * ```
 */
export declare function getSinkOutput(args: GetSinkOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetSinkResult>;
/**
 * A collection of arguments for invoking getSink.
 */
export interface GetSinkOutputArgs {
    /**
     * The identifier for the resource.
     * Examples:
     *
     * - `projects/[PROJECT_ID]/sinks/[SINK_NAME]`
     * - `organizations/[ORGANIZATION_ID]/sinks/[SINK_NAME]`
     * -  `billingAccounts/[BILLING_ACCOUNT_ID]/sinks/[SINK_NAME]`
     * - `folders/[FOLDER_ID]/sinks/[SINK_NAME]`
     */
    id: pulumi.Input<string>;
}
