import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../types/output"; /** * Uses this data source to access information about an existing NetApp Snapshot Policy. * * ## NetApp Snapshot Policy Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * * const example = azure.netapp.getSnapshotPolicy({ * resourceGroupName: "acctestRG", * accountName: "acctestnetappaccount", * name: "example-snapshot-policy", * }); * export const id = example.then(example => example.id); * export const name = example.then(example => example.name); * export const enabled = example.then(example => example.enabled); * export const hourlySchedule = example.then(example => example.hourlySchedules); * export const dailySchedule = example.then(example => example.dailySchedules); * export const weeklySchedule = example.then(example => example.weeklySchedules); * export const monthlySchedule = example.then(example => example.monthlySchedules); * ``` * * ## API Providers * * * This data source uses the following Azure API Providers: * * * `Microsoft.NetApp` - 2025-12-01 */ export declare function getSnapshotPolicy(args: GetSnapshotPolicyArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getSnapshotPolicy. */ export interface GetSnapshotPolicyArgs { /** * The name of the NetApp account where the NetApp Snapshot Policy exists. */ accountName: string; /** * The name of the NetApp Snapshot Policy. */ name: string; /** * The Name of the Resource Group where the NetApp Snapshot Policy exists. */ resourceGroupName: string; } /** * A collection of values returned by getSnapshotPolicy. */ export interface GetSnapshotPolicyResult { /** * The name of the NetApp Account in which the NetApp Snapshot Policy was created. */ readonly accountName: string; /** * Daily snapshot schedule. */ readonly dailySchedules: outputs.netapp.GetSnapshotPolicyDailySchedule[]; /** * Defines that the NetApp Snapshot Policy is enabled or not. */ readonly enabled: boolean; /** * Hourly snapshot schedule. */ readonly hourlySchedules: outputs.netapp.GetSnapshotPolicyHourlySchedule[]; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; /** * Specifies the supported Azure location where the resource exists. */ readonly location: string; /** * List of the days of the month when the snapshots will be created. */ readonly monthlySchedules: outputs.netapp.GetSnapshotPolicyMonthlySchedule[]; /** * The name of the NetApp Snapshot Policy. */ readonly name: string; /** * The name of the resource group where the NetApp Snapshot Policy should be created. */ readonly resourceGroupName: string; readonly tags: { [key: string]: string; }; /** * Weekly snapshot schedule. */ readonly weeklySchedules: outputs.netapp.GetSnapshotPolicyWeeklySchedule[]; } /** * Uses this data source to access information about an existing NetApp Snapshot Policy. * * ## NetApp Snapshot Policy Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as azure from "@pulumi/azure"; * * const example = azure.netapp.getSnapshotPolicy({ * resourceGroupName: "acctestRG", * accountName: "acctestnetappaccount", * name: "example-snapshot-policy", * }); * export const id = example.then(example => example.id); * export const name = example.then(example => example.name); * export const enabled = example.then(example => example.enabled); * export const hourlySchedule = example.then(example => example.hourlySchedules); * export const dailySchedule = example.then(example => example.dailySchedules); * export const weeklySchedule = example.then(example => example.weeklySchedules); * export const monthlySchedule = example.then(example => example.monthlySchedules); * ``` * * ## API Providers * * * This data source uses the following Azure API Providers: * * * `Microsoft.NetApp` - 2025-12-01 */ export declare function getSnapshotPolicyOutput(args: GetSnapshotPolicyOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getSnapshotPolicy. */ export interface GetSnapshotPolicyOutputArgs { /** * The name of the NetApp account where the NetApp Snapshot Policy exists. */ accountName: pulumi.Input; /** * The name of the NetApp Snapshot Policy. */ name: pulumi.Input; /** * The Name of the Resource Group where the NetApp Snapshot Policy exists. */ resourceGroupName: pulumi.Input; }