import * as pulumi from "@pulumi/pulumi";
import * as inputs from "../types/input";
import * as outputs from "../types/output";
import * as enums from "../types/enums";
/**
 * Template resource definition.
 *
 * Uses Azure REST API version 2024-09-01. In version 2.x of the Azure Native provider, it used API version 2023-06-01-preview.
 *
 * Other available API versions: 2023-04-01-preview, 2023-05-01-preview, 2023-06-01-preview, 2023-07-01-preview, 2023-08-01-preview, 2023-09-01-preview, 2023-10-01-preview, 2023-11-01, 2023-12-01-preview, 2024-01-01-preview, 2024-03-01, 2024-04-01-preview, 2024-10-01-preview, 2025-01-01-preview, 2025-03-01. These can be accessed by generating a local SDK package using the CLI command `pulumi package add azure-native securityinsights [ApiVersion]`. See the [version guide](../../../version-guide/#accessing-any-api-version-via-local-packages) for details.
 */
export declare class ContentTemplate extends pulumi.CustomResource {
    /**
     * Get an existing ContentTemplate 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 opts Optional settings to control the behavior of the CustomResource.
     */
    static get(name: string, id: pulumi.Input<pulumi.ID>, opts?: pulumi.CustomResourceOptions): ContentTemplate;
    /**
     * Returns true if the given object is an instance of ContentTemplate.  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 ContentTemplate;
    /**
     * The creator of the content item.
     */
    readonly author: pulumi.Output<outputs.securityinsights.MetadataAuthorResponse | undefined>;
    /**
     * The Azure API version of the resource.
     */
    readonly azureApiVersion: pulumi.Output<string>;
    /**
     * Categories for the item
     */
    readonly categories: pulumi.Output<outputs.securityinsights.MetadataCategoriesResponse | undefined>;
    /**
     * Static ID for the content.  Used to identify dependencies and content from solutions or community.  Hard-coded/static for out of the box content and solutions. Dynamic for user-created.  This is the resource name
     */
    readonly contentId: pulumi.Output<string>;
    /**
     * The kind of content the template is for.
     */
    readonly contentKind: pulumi.Output<string>;
    /**
     * Unique ID for the content. It should be generated based on the contentId of the package, contentId of the template, contentKind of the template and the contentVersion of the template
     */
    readonly contentProductId: pulumi.Output<string>;
    /**
     * Schema version of the content. Can be used to distinguish between different flow based on the schema version
     */
    readonly contentSchemaVersion: pulumi.Output<string | undefined>;
    /**
     * The custom version of the content. A optional free text
     */
    readonly customVersion: pulumi.Output<string | undefined>;
    /**
     * Dependant templates. Expandable.
     */
    readonly dependantTemplates: pulumi.Output<outputs.securityinsights.TemplatePropertiesResponse[]>;
    /**
     * Dependencies for the content item, what other content items it requires to work.  Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats.
     */
    readonly dependencies: pulumi.Output<outputs.securityinsights.MetadataDependenciesResponse | undefined>;
    /**
     * The display name of the template
     */
    readonly displayName: pulumi.Output<string>;
    /**
     * Etag of the azure resource
     */
    readonly etag: pulumi.Output<string | undefined>;
    /**
     * first publish date content item
     */
    readonly firstPublishDate: pulumi.Output<string | undefined>;
    /**
     * the icon identifier. this id can later be fetched from the content metadata
     */
    readonly icon: pulumi.Output<string | undefined>;
    /**
     * Flag indicates if this template is deprecated
     */
    readonly isDeprecated: pulumi.Output<string>;
    /**
     * last publish date for the content item
     */
    readonly lastPublishDate: pulumi.Output<string | undefined>;
    /**
     * The JSON of the ARM template to deploy active content. Expandable.
     */
    readonly mainTemplate: pulumi.Output<any | undefined>;
    /**
     * The name of the resource
     */
    readonly name: pulumi.Output<string>;
    /**
     * the package Id contains this template
     */
    readonly packageId: pulumi.Output<string>;
    /**
     * the packageKind of the package contains this template
     */
    readonly packageKind: pulumi.Output<string | undefined>;
    /**
     * the name of the package contains this template
     */
    readonly packageName: pulumi.Output<string | undefined>;
    /**
     * Version of the package.  Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM metadata best practices.  Can also be any string, but then we cannot guarantee any version checks
     */
    readonly packageVersion: pulumi.Output<string>;
    /**
     * preview image file names. These will be taken from the solution artifacts
     */
    readonly previewImages: pulumi.Output<string[] | undefined>;
    /**
     * preview image file names. These will be taken from the solution artifacts. used for dark theme support
     */
    readonly previewImagesDark: pulumi.Output<string[] | undefined>;
    /**
     * Providers for the content item
     */
    readonly providers: pulumi.Output<string[] | undefined>;
    /**
     * Source of the content.  This is where/how it was created.
     */
    readonly source: pulumi.Output<outputs.securityinsights.MetadataSourceResponse>;
    /**
     * Support information for the template - type, name, contact information
     */
    readonly support: pulumi.Output<outputs.securityinsights.MetadataSupportResponse | undefined>;
    /**
     * Azure Resource Manager metadata containing createdBy and modifiedBy information.
     */
    readonly systemData: pulumi.Output<outputs.securityinsights.SystemDataResponse>;
    /**
     * the tactics the resource covers
     */
    readonly threatAnalysisTactics: pulumi.Output<string[] | undefined>;
    /**
     * the techniques the resource covers, these have to be aligned with the tactics being used
     */
    readonly threatAnalysisTechniques: pulumi.Output<string[] | undefined>;
    /**
     * The type of the resource. E.g. "Microsoft.Compute/virtualMachines" or "Microsoft.Storage/storageAccounts"
     */
    readonly type: pulumi.Output<string>;
    /**
     * Version of the content.  Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM metadata best practices.  Can also be any string, but then we cannot guarantee any version checks
     */
    readonly version: pulumi.Output<string>;
    /**
     * Create a ContentTemplate 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: ContentTemplateArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * The set of arguments for constructing a ContentTemplate resource.
 */
export interface ContentTemplateArgs {
    /**
     * The creator of the content item.
     */
    author?: pulumi.Input<inputs.securityinsights.MetadataAuthorArgs>;
    /**
     * Categories for the item
     */
    categories?: pulumi.Input<inputs.securityinsights.MetadataCategoriesArgs>;
    /**
     * Static ID for the content.  Used to identify dependencies and content from solutions or community.  Hard-coded/static for out of the box content and solutions. Dynamic for user-created.  This is the resource name
     */
    contentId: pulumi.Input<string>;
    /**
     * The kind of content the template is for.
     */
    contentKind: pulumi.Input<string | enums.securityinsights.Kind>;
    /**
     * Unique ID for the content. It should be generated based on the contentId of the package, contentId of the template, contentKind of the template and the contentVersion of the template
     */
    contentProductId: pulumi.Input<string>;
    /**
     * Schema version of the content. Can be used to distinguish between different flow based on the schema version
     */
    contentSchemaVersion?: pulumi.Input<string>;
    /**
     * The custom version of the content. A optional free text
     */
    customVersion?: pulumi.Input<string>;
    /**
     * Dependencies for the content item, what other content items it requires to work.  Can describe more complex dependencies using a recursive/nested structure. For a single dependency an id/kind/version can be supplied or operator/criteria for complex formats.
     */
    dependencies?: pulumi.Input<inputs.securityinsights.MetadataDependenciesArgs>;
    /**
     * The display name of the template
     */
    displayName: pulumi.Input<string>;
    /**
     * first publish date content item
     */
    firstPublishDate?: pulumi.Input<string>;
    /**
     * the icon identifier. this id can later be fetched from the content metadata
     */
    icon?: pulumi.Input<string>;
    /**
     * last publish date for the content item
     */
    lastPublishDate?: pulumi.Input<string>;
    /**
     * The JSON of the ARM template to deploy active content. Expandable.
     */
    mainTemplate?: any;
    /**
     * the package Id contains this template
     */
    packageId: pulumi.Input<string>;
    /**
     * the packageKind of the package contains this template
     */
    packageKind?: pulumi.Input<string | enums.securityinsights.PackageKind>;
    /**
     * the name of the package contains this template
     */
    packageName?: pulumi.Input<string>;
    /**
     * Version of the package.  Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM metadata best practices.  Can also be any string, but then we cannot guarantee any version checks
     */
    packageVersion: pulumi.Input<string>;
    /**
     * preview image file names. These will be taken from the solution artifacts
     */
    previewImages?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * preview image file names. These will be taken from the solution artifacts. used for dark theme support
     */
    previewImagesDark?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Providers for the content item
     */
    providers?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * The name of the resource group. The name is case insensitive.
     */
    resourceGroupName: pulumi.Input<string>;
    /**
     * Source of the content.  This is where/how it was created.
     */
    source: pulumi.Input<inputs.securityinsights.MetadataSourceArgs>;
    /**
     * Support information for the template - type, name, contact information
     */
    support?: pulumi.Input<inputs.securityinsights.MetadataSupportArgs>;
    /**
     * template Id
     */
    templateId?: pulumi.Input<string>;
    /**
     * the tactics the resource covers
     */
    threatAnalysisTactics?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * the techniques the resource covers, these have to be aligned with the tactics being used
     */
    threatAnalysisTechniques?: pulumi.Input<pulumi.Input<string>[]>;
    /**
     * Version of the content.  Default and recommended format is numeric (e.g. 1, 1.0, 1.0.0, 1.0.0.0), following ARM metadata best practices.  Can also be any string, but then we cannot guarantee any version checks
     */
    version: pulumi.Input<string>;
    /**
     * The name of the workspace.
     */
    workspaceName: pulumi.Input<string>;
}
