import * as pulumi from "@pulumi/pulumi";
import * as outputs from "../types/output";
/**
 * This data source provides details about a specific Agent resource in Oracle Cloud Infrastructure Cloud Bridge service.
 *
 * Gets an Agent by identifier.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testAgent = oci.cloudbridge.getAgent({
 *     agentId: testAgentOciCloudBridgeAgent.id,
 * });
 * ```
 */
export declare function getAgent(args: GetAgentArgs, opts?: pulumi.InvokeOptions): Promise<GetAgentResult>;
/**
 * A collection of arguments for invoking getAgent.
 */
export interface GetAgentArgs {
    /**
     * Unique Agent identifier path parameter.
     */
    agentId: string;
}
/**
 * A collection of values returned by getAgent.
 */
export interface GetAgentResult {
    /**
     * Agent identifier.
     */
    readonly agentId: string;
    /**
     * Resource principal public key.
     */
    readonly agentPubKey: string;
    /**
     * Type of the Agent.
     */
    readonly agentType: string;
    /**
     * Agent identifier.
     */
    readonly agentVersion: string;
    /**
     * Compartment identifier.
     */
    readonly compartmentId: string;
    /**
     * The defined tags associated with this resource, if any. Each key is predefined and scoped to namespaces. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Operations.CostCenter": "42"}`
     */
    readonly definedTags: {
        [key: string]: string;
    };
    /**
     * Agent identifier, can be renamed.
     */
    readonly displayName: string;
    /**
     * Environment identifier.
     */
    readonly environmentId: string;
    /**
     * The freeform tags associated with this resource, if any. Each tag is a simple key-value pair with no predefined name, type, or namespace/scope. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{"Department": "Finance"}`
     */
    readonly freeformTags: {
        [key: string]: string;
    };
    /**
     * The current heartbeat status of the Agent based on its timeLastSyncReceived value.
     */
    readonly heartBeatStatus: string;
    /**
     * Unique identifier that is immutable on creation.
     */
    readonly id: string;
    /**
     * A message describing the current state in more detail. For example, it can be used to provide actionable information for a resource in Failed state.
     */
    readonly lifecycleDetails: string;
    /**
     * OS version.
     */
    readonly osVersion: string;
    /**
     * List of plugins associated with the agent.
     */
    readonly pluginLists: outputs.CloudBridge.GetAgentPluginList[];
    /**
     * The current state of the Agent.
     */
    readonly state: string;
    /**
     * The system tags associated with this resource, if any. The system tags are set by Oracle cloud infrastructure services. Each key is predefined and scoped to namespaces. For more information, see [Resource Tags](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/resourcetags.htm). Example: `{orcl-cloud: {free-tier-retain: true}}`
     */
    readonly systemTags: {
        [key: string]: string;
    };
    /**
     * The time when the Agent was created. An RFC3339 formatted datetime string.
     */
    readonly timeCreated: string;
    /**
     * The time since epoch for when the public key will expire. An RFC3339 formatted datetime string.
     */
    readonly timeExpireAgentKeyInMs: string;
    /**
     * The time when the last heartbeat of the Agent was noted. An RFC3339 formatted datetime string.
     */
    readonly timeLastSyncReceived: string;
    /**
     * The time when the Agent was updated. An RFC3339 formatted datetime string.
     */
    readonly timeUpdated: string;
}
/**
 * This data source provides details about a specific Agent resource in Oracle Cloud Infrastructure Cloud Bridge service.
 *
 * Gets an Agent by identifier.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testAgent = oci.cloudbridge.getAgent({
 *     agentId: testAgentOciCloudBridgeAgent.id,
 * });
 * ```
 */
export declare function getAgentOutput(args: GetAgentOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output<GetAgentResult>;
/**
 * A collection of arguments for invoking getAgent.
 */
export interface GetAgentOutputArgs {
    /**
     * Unique Agent identifier path parameter.
     */
    agentId: pulumi.Input<string>;
}
//# sourceMappingURL=getAgent.d.ts.map