import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
/**
 * This resource provides the Asset Source resource in Oracle Cloud Infrastructure Cloud Bridge service.
 * Api doc link for the resource: https://docs.oracle.com/iaas/api/#/en/OCB/latest/AssetSource
 *
 * Example terraform configs related to the resource : https://github.com/oracle/terraform-provider-oci/tree/master/examples/cloudBridge
 *
 * Creates an asset source.
 *
 * ## Example Usage
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as oci from "@pulumi/oci";
 *
 * const testAssetSource = new oci.cloudbridge.AssetSource("test_asset_source", {
 *     assetsCompartmentId: testCompartment.id,
 *     compartmentId: compartmentId,
 *     discoveryCredentials: {
 *         secretId: testSecret.id,
 *         type: assetSourceDiscoveryCredentialsType,
 *     },
 *     environmentId: testEnvironment.id,
 *     inventoryId: testInventory.id,
 *     type: assetSourceType,
 *     areHistoricalMetricsCollected: assetSourceAreHistoricalMetricsCollected === "true",
 *     areRealtimeMetricsCollected: assetSourceAreRealtimeMetricsCollected === "true",
 *     awsAccountKey: assetSourceAwsAccountKey,
 *     awsRegion: assetSourceAwsRegion,
 *     definedTags: {
 *         "Operations.CostCenter": "42",
 *     },
 *     discoveryScheduleId: testDiscoverySchedule.id,
 *     displayName: assetSourceDisplayName,
 *     environmentType: assetSourceEnvironmentType,
 *     freeformTags: {
 *         Department: "Finance",
 *     },
 *     isCostInformationCollected: assetSourceIsCostInformationCollected === "true",
 *     olvmEndpoint: assetSourceOlvmEndpoint,
 *     replicationCredentials: {
 *         secretId: testSecret.id,
 *         type: assetSourceReplicationCredentialsType,
 *     },
 *     systemTags: assetSourceSystemTags,
 *     vcenterEndpoint: assetSourceVcenterEndpoint,
 * });
 * ```
 *
 * ## Import
 *
 * AssetSources can be imported using the `id`, e.g.
 *
 * ```sh
 * $ pulumi import oci:CloudBridge/assetSource:AssetSource test_asset_source "id"
 * ```
 */
export declare class AssetSource extends pulumi.CustomResource {
    /**
     * Get an existing AssetSource resource's state with the given name, ID, and optional extra
     * properties used to qualify the lookup.
     *
     * @param name The _unique_ name of the resulting resource.
     * @param id The _unique_ provider ID of the resource to lookup.
     * @param state Any extra arguments used during the lookup.
     * @param opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, state?: AssetSourceState, opts?: pulumi.CustomResourceOptions): AssetSource;
    /**
     * Returns true if the given object is an instance of AssetSource.  This is designed to work even
     * when multiple copies of the Pulumi SDK have been loaded into the same process.
     */
    static isInstance(obj: any): obj is AssetSource;
    /**
     * (Updatable) Flag indicating whether historical metrics are collected for assets, originating from this asset source.
     */
    readonly areHistoricalMetricsCollected: pulumi.Output<boolean>;
    /**
     * (Updatable) Flag indicating whether real-time metrics are collected for assets, originating from this asset source.
     */
    readonly areRealtimeMetricsCollected: pulumi.Output<boolean>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that is going to be used to create assets.
     */
    readonly assetsCompartmentId: pulumi.Output<string>;
    /**
     * The key of customer's aws account to be discovered/migrated.
     */
    readonly awsAccountKey: pulumi.Output<string>;
    /**
     * AWS region information, from where the resources are discovered.
     */
    readonly awsRegion: pulumi.Output<string>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment for the resource.
     */
    readonly compartmentId: pulumi.Output<string>;
    /**
     * (Updatable) 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: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * (Updatable) Credentials for an asset source.
     */
    readonly discoveryCredentials: pulumi.Output<outputs.CloudBridge.AssetSourceDiscoveryCredentials>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the discovery schedule that is going to be attached to the created asset.
     */
    readonly discoveryScheduleId: pulumi.Output<string>;
    /**
     * (Updatable) A user-friendly name for the asset source. Does not have to be unique, and it's mutable. Avoid entering confidential information. The name is generated by the service if it is not explicitly provided.
     */
    readonly displayName: pulumi.Output<string>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the environment.
     */
    readonly environmentId: pulumi.Output<string>;
    /**
     * (Updatable) Specifies if this is the Source or Destination point for migration - different assets may be discovered depending on setting.
     */
    readonly environmentType: pulumi.Output<string>;
    /**
     * (Updatable) 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: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the inventory that will contain created assets.
     */
    readonly inventoryId: pulumi.Output<string>;
    /**
     * (Updatable) Flag indicating whether cost data collection is enabled for assets, originating from this asset source.
     */
    readonly isCostInformationCollected: pulumi.Output<boolean>;
    /**
     * The detailed state of the asset source.
     */
    readonly lifecycleDetails: pulumi.Output<string>;
    /**
     * (Updatable) Endpoint for OLVM asset discovery and replication in the form of ```https://<host>:<port>```
     */
    readonly olvmEndpoint: pulumi.Output<string>;
    /**
     * (Updatable) Credentials for an asset source.
     */
    readonly replicationCredentials: pulumi.Output<outputs.CloudBridge.AssetSourceReplicationCredentials>;
    /**
     * The current state of the asset source.
     */
    readonly state: pulumi.Output<string>;
    /**
     * (Updatable) 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: pulumi.Output<{
        [key: string]: string;
    }>;
    /**
     * The time when the asset source was created in the RFC3339 format.
     */
    readonly timeCreated: pulumi.Output<string>;
    /**
     * The point in time that the asset source was last updated in the RFC3339 format.
     */
    readonly timeUpdated: pulumi.Output<string>;
    /**
     * (Updatable) Asset source type.
     */
    readonly type: pulumi.Output<string>;
    /**
     * (Updatable) Endpoint for VMware asset discovery and replication in the form of ```https://<host>:<port>/sdk```
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     */
    readonly vcenterEndpoint: pulumi.Output<string>;
    /**
     * Create a AssetSource resource with the given unique name, arguments, and options.
     *
     * @param name The _unique_ name of the resource.
     * @param args The arguments to use to populate this resource's properties.
     * @param opts A bag of options that control this resource's behavior.
     */
    constructor(name: string, args: AssetSourceArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering AssetSource resources.
 */
export interface AssetSourceState {
    /**
     * (Updatable) Flag indicating whether historical metrics are collected for assets, originating from this asset source.
     */
    areHistoricalMetricsCollected?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Flag indicating whether real-time metrics are collected for assets, originating from this asset source.
     */
    areRealtimeMetricsCollected?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that is going to be used to create assets.
     */
    assetsCompartmentId?: pulumi.Input<string | undefined>;
    /**
     * The key of customer's aws account to be discovered/migrated.
     */
    awsAccountKey?: pulumi.Input<string | undefined>;
    /**
     * AWS region information, from where the resources are discovered.
     */
    awsRegion?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment for the resource.
     */
    compartmentId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) 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"}`
     */
    definedTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * (Updatable) Credentials for an asset source.
     */
    discoveryCredentials?: pulumi.Input<inputs.CloudBridge.AssetSourceDiscoveryCredentials | undefined>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the discovery schedule that is going to be attached to the created asset.
     */
    discoveryScheduleId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) A user-friendly name for the asset source. Does not have to be unique, and it's mutable. Avoid entering confidential information. The name is generated by the service if it is not explicitly provided.
     */
    displayName?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the environment.
     */
    environmentId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Specifies if this is the Source or Destination point for migration - different assets may be discovered depending on setting.
     */
    environmentType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) 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"}`
     */
    freeformTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the inventory that will contain created assets.
     */
    inventoryId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Flag indicating whether cost data collection is enabled for assets, originating from this asset source.
     */
    isCostInformationCollected?: pulumi.Input<boolean | undefined>;
    /**
     * The detailed state of the asset source.
     */
    lifecycleDetails?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Endpoint for OLVM asset discovery and replication in the form of ```https://<host>:<port>```
     */
    olvmEndpoint?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Credentials for an asset source.
     */
    replicationCredentials?: pulumi.Input<inputs.CloudBridge.AssetSourceReplicationCredentials | undefined>;
    /**
     * The current state of the asset source.
     */
    state?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) 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}}`
     */
    systemTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * The time when the asset source was created in the RFC3339 format.
     */
    timeCreated?: pulumi.Input<string | undefined>;
    /**
     * The point in time that the asset source was last updated in the RFC3339 format.
     */
    timeUpdated?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Asset source type.
     */
    type?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Endpoint for VMware asset discovery and replication in the form of ```https://<host>:<port>/sdk```
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     */
    vcenterEndpoint?: pulumi.Input<string | undefined>;
}
/**
 * The set of arguments for constructing a AssetSource resource.
 */
export interface AssetSourceArgs {
    /**
     * (Updatable) Flag indicating whether historical metrics are collected for assets, originating from this asset source.
     */
    areHistoricalMetricsCollected?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Flag indicating whether real-time metrics are collected for assets, originating from this asset source.
     */
    areRealtimeMetricsCollected?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment that is going to be used to create assets.
     */
    assetsCompartmentId: pulumi.Input<string>;
    /**
     * The key of customer's aws account to be discovered/migrated.
     */
    awsAccountKey?: pulumi.Input<string | undefined>;
    /**
     * AWS region information, from where the resources are discovered.
     */
    awsRegion?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the compartment for the resource.
     */
    compartmentId: pulumi.Input<string>;
    /**
     * (Updatable) 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"}`
     */
    definedTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * (Updatable) Credentials for an asset source.
     */
    discoveryCredentials: pulumi.Input<inputs.CloudBridge.AssetSourceDiscoveryCredentials>;
    /**
     * (Updatable) The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the discovery schedule that is going to be attached to the created asset.
     */
    discoveryScheduleId?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) A user-friendly name for the asset source. Does not have to be unique, and it's mutable. Avoid entering confidential information. The name is generated by the service if it is not explicitly provided.
     */
    displayName?: pulumi.Input<string | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the environment.
     */
    environmentId: pulumi.Input<string>;
    /**
     * (Updatable) Specifies if this is the Source or Destination point for migration - different assets may be discovered depending on setting.
     */
    environmentType?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) 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"}`
     */
    freeformTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the inventory that will contain created assets.
     */
    inventoryId: pulumi.Input<string>;
    /**
     * (Updatable) Flag indicating whether cost data collection is enabled for assets, originating from this asset source.
     */
    isCostInformationCollected?: pulumi.Input<boolean | undefined>;
    /**
     * (Updatable) Endpoint for OLVM asset discovery and replication in the form of ```https://<host>:<port>```
     */
    olvmEndpoint?: pulumi.Input<string | undefined>;
    /**
     * (Updatable) Credentials for an asset source.
     */
    replicationCredentials?: pulumi.Input<inputs.CloudBridge.AssetSourceReplicationCredentials | undefined>;
    /**
     * (Updatable) 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}}`
     */
    systemTags?: pulumi.Input<{
        [key: string]: pulumi.Input<string>;
    } | undefined>;
    /**
     * (Updatable) Asset source type.
     */
    type: pulumi.Input<string>;
    /**
     * (Updatable) Endpoint for VMware asset discovery and replication in the form of ```https://<host>:<port>/sdk```
     *
     *
     * ** IMPORTANT **
     * Any change to a property that does not support update will force the destruction and recreation of the resource with the new property values
     */
    vcenterEndpoint?: pulumi.Input<string | undefined>;
}
//# sourceMappingURL=assetSource.d.ts.map