diff --git a/packages/@azure/arm-netapp/LICENSE.txt b/packages/@azure/arm-netapp/LICENSE.txt
new file mode 100644
index 000000000000..8f3d856145c5
--- /dev/null
+++ b/packages/@azure/arm-netapp/LICENSE.txt
@@ -0,0 +1,21 @@
+The MIT License (MIT)
+
+Copyright (c) 2019 Microsoft
+
+Permission is hereby granted, free of charge, to any person obtaining a copy
+of this software and associated documentation files (the "Software"), to deal
+in the Software without restriction, including without limitation the rights
+to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
+copies of the Software, and to permit persons to whom the Software is
+furnished to do so, subject to the following conditions:
+
+The above copyright notice and this permission notice shall be included in all
+copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
+OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
+SOFTWARE.
diff --git a/packages/@azure/arm-netapp/README.md b/packages/@azure/arm-netapp/README.md
new file mode 100644
index 000000000000..32f868df0585
--- /dev/null
+++ b/packages/@azure/arm-netapp/README.md
@@ -0,0 +1,96 @@
+## Azure AzureNetAppFilesManagementClient SDK for JavaScript
+
+This package contains an isomorphic SDK for AzureNetAppFilesManagementClient.
+
+### Currently supported environments
+
+- Node.js version 6.x.x or higher
+- Browser JavaScript
+
+### How to Install
+
+```bash
+npm install @azure/arm-netapp
+```
+
+### How to use
+
+#### nodejs - Authentication, client creation and list operations as an example written in TypeScript.
+
+##### Install @azure/ms-rest-nodeauth
+
+```bash
+npm install @azure/ms-rest-nodeauth
+```
+
+##### Sample code
+
+```typescript
+import * as msRest from "@azure/ms-rest-js";
+import * as msRestAzure from "@azure/ms-rest-azure-js";
+import * as msRestNodeAuth from "@azure/ms-rest-nodeauth";
+import { AzureNetAppFilesManagementClient, AzureNetAppFilesManagementModels, AzureNetAppFilesManagementMappers } from "@azure/arm-netapp";
+const subscriptionId = process.env["AZURE_SUBSCRIPTION_ID"];
+
+msRestNodeAuth.interactiveLogin().then((creds) => {
+ const client = new AzureNetAppFilesManagementClient(creds, subscriptionId);
+ client.operations.list().then((result) => {
+ console.log("The result is:");
+ console.log(result);
+ });
+}).catch((err) => {
+ console.error(err);
+});
+```
+
+#### browser - Authentication, client creation and list operations as an example written in JavaScript.
+
+##### Install @azure/ms-rest-browserauth
+
+```bash
+npm install @azure/ms-rest-browserauth
+```
+
+##### Sample code
+
+See https://github.com/Azure/ms-rest-browserauth to learn how to authenticate to Azure in the browser.
+
+- index.html
+```html
+
+
+
+ @azure/arm-netapp sample
+
+
+
+
+
+
+
+
+```
+
+## Related projects
+
+- [Microsoft Azure SDK for Javascript](https://github.com/Azure/azure-sdk-for-js)
diff --git a/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClient.ts b/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClient.ts
new file mode 100644
index 000000000000..bbaa7656e4f0
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClient.ts
@@ -0,0 +1,53 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as Models from "./models";
+import * as Mappers from "./models/mappers";
+import * as operations from "./operations";
+import { AzureNetAppFilesManagementClientContext } from "./azureNetAppFilesManagementClientContext";
+
+
+class AzureNetAppFilesManagementClient extends AzureNetAppFilesManagementClientContext {
+ // Operation groups
+ operations: operations.Operations;
+ accounts: operations.Accounts;
+ pools: operations.Pools;
+ volumes: operations.Volumes;
+ mountTargets: operations.MountTargets;
+ snapshots: operations.Snapshots;
+
+ /**
+ * Initializes a new instance of the AzureNetAppFilesManagementClient class.
+ * @param credentials Credentials needed for the client to connect to Azure.
+ * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure
+ * subscription. The subscription ID forms part of the URI for every service call.
+ * @param [options] The parameter options
+ */
+ constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureNetAppFilesManagementClientOptions) {
+ super(credentials, subscriptionId, options);
+ this.operations = new operations.Operations(this);
+ this.accounts = new operations.Accounts(this);
+ this.pools = new operations.Pools(this);
+ this.volumes = new operations.Volumes(this);
+ this.mountTargets = new operations.MountTargets(this);
+ this.snapshots = new operations.Snapshots(this);
+ }
+}
+
+// Operation Specifications
+
+export {
+ AzureNetAppFilesManagementClient,
+ AzureNetAppFilesManagementClientContext,
+ Models as AzureNetAppFilesManagementModels,
+ Mappers as AzureNetAppFilesManagementMappers
+};
+export * from "./operations";
diff --git a/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClientContext.ts b/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClientContext.ts
new file mode 100644
index 000000000000..a79bbacc719d
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/azureNetAppFilesManagementClientContext.ts
@@ -0,0 +1,63 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as Models from "./models";
+import * as msRest from "@azure/ms-rest-js";
+import * as msRestAzure from "@azure/ms-rest-azure-js";
+
+const packageName = "@azure/arm-netapp";
+const packageVersion = "1.0.0";
+
+export class AzureNetAppFilesManagementClientContext extends msRestAzure.AzureServiceClient {
+ credentials: msRest.ServiceClientCredentials;
+ subscriptionId: string;
+ apiVersion?: string;
+
+ /**
+ * Initializes a new instance of the AzureNetAppFilesManagementClient class.
+ * @param credentials Credentials needed for the client to connect to Azure.
+ * @param subscriptionId Subscription credentials which uniquely identify Microsoft Azure
+ * subscription. The subscription ID forms part of the URI for every service call.
+ * @param [options] The parameter options
+ */
+ constructor(credentials: msRest.ServiceClientCredentials, subscriptionId: string, options?: Models.AzureNetAppFilesManagementClientOptions) {
+ if (credentials == undefined) {
+ throw new Error('\'credentials\' cannot be null.');
+ }
+ if (subscriptionId == undefined) {
+ throw new Error('\'subscriptionId\' cannot be null.');
+ }
+
+ if (!options) {
+ options = {};
+ }
+ if(!options.userAgent) {
+ const defaultUserAgent = msRestAzure.getDefaultUserAgentValue();
+ options.userAgent = `${packageName}/${packageVersion} ${defaultUserAgent}`;
+ }
+
+ super(credentials, options);
+
+ this.apiVersion = '2017-08-15';
+ this.acceptLanguage = 'en-US';
+ this.longRunningOperationRetryTimeout = 30;
+ this.baseUri = options.baseUri || this.baseUri || "https://management.azure.com";
+ this.requestContentType = "application/json; charset=utf-8";
+ this.credentials = credentials;
+ this.subscriptionId = subscriptionId;
+
+ if(options.acceptLanguage !== null && options.acceptLanguage !== undefined) {
+ this.acceptLanguage = options.acceptLanguage;
+ }
+ if(options.longRunningOperationRetryTimeout !== null && options.longRunningOperationRetryTimeout !== undefined) {
+ this.longRunningOperationRetryTimeout = options.longRunningOperationRetryTimeout;
+ }
+ }
+}
diff --git a/packages/@azure/arm-netapp/lib/models/accountsMappers.ts b/packages/@azure/arm-netapp/lib/models/accountsMappers.ts
new file mode 100644
index 000000000000..eb5dd35ad066
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/accountsMappers.ts
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+export {
+ NetAppAccountList,
+ NetAppAccount,
+ BaseResource,
+ ErrorModel,
+ NetAppAccountPatch,
+ CapacityPool,
+ CapacityPoolPatch,
+ Volume,
+ VolumePatch,
+ Snapshot,
+ SnapshotPatch
+} from "../models/mappers";
+
diff --git a/packages/@azure/arm-netapp/lib/models/index.ts b/packages/@azure/arm-netapp/lib/models/index.ts
new file mode 100644
index 000000000000..8082c8c39767
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/index.ts
@@ -0,0 +1,1137 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import { BaseResource, CloudError, AzureServiceClientOptions } from "@azure/ms-rest-azure-js";
+import * as msRest from "@azure/ms-rest-js";
+
+export { BaseResource, CloudError };
+
+
+/**
+ * @interface
+ * An interface representing OperationDisplay.
+ * Display metadata associated with the operation.
+ *
+ */
+export interface OperationDisplay {
+ /**
+ * @member {string} [provider] Service provider: Microsoft NetApp.
+ */
+ provider?: string;
+ /**
+ * @member {string} [resource] Resource on which the operation is performed
+ * etc.
+ */
+ resource?: string;
+ /**
+ * @member {string} [operation] Type of operation: get, read, delete, etc.
+ */
+ operation?: string;
+ /**
+ * @member {string} [description] Operation description.
+ */
+ description?: string;
+}
+
+/**
+ * @interface
+ * An interface representing Dimension.
+ * Dimension of blobs, possibly be blob type or access tier.
+ *
+ */
+export interface Dimension {
+ /**
+ * @member {string} [name] Display name of dimension.
+ */
+ name?: string;
+ /**
+ * @member {string} [displayName] Display name of dimension.
+ */
+ displayName?: string;
+}
+
+/**
+ * @interface
+ * An interface representing MetricSpecification.
+ * Metric specification of operation.
+ *
+ */
+export interface MetricSpecification {
+ /**
+ * @member {string} [name] Name of metric specification.
+ */
+ name?: string;
+ /**
+ * @member {string} [displayName] Display name of metric specification.
+ */
+ displayName?: string;
+ /**
+ * @member {string} [displayDescription] Display description of metric
+ * specification.
+ */
+ displayDescription?: string;
+ /**
+ * @member {string} [unit] Unit could be Bytes or Count.
+ */
+ unit?: string;
+ /**
+ * @member {Dimension[]} [dimensions] Dimensions of blobs, including blob
+ * type and access tier.
+ */
+ dimensions?: Dimension[];
+ /**
+ * @member {string} [aggregationType] Aggregation type could be Average.
+ */
+ aggregationType?: string;
+ /**
+ * @member {boolean} [fillGapWithZero] The property to decide fill gap with
+ * zero or not.
+ */
+ fillGapWithZero?: boolean;
+ /**
+ * @member {string} [category] The category this metric specification belong
+ * to, could be Capacity.
+ */
+ category?: string;
+ /**
+ * @member {string} [resourceIdDimensionNameOverride] Account Resource Id.
+ */
+ resourceIdDimensionNameOverride?: string;
+}
+
+/**
+ * @interface
+ * An interface representing ServiceSpecification.
+ * One property of operation, include metric specifications.
+ *
+ */
+export interface ServiceSpecification {
+ /**
+ * @member {MetricSpecification[]} [metricSpecifications] Metric
+ * specifications of operation.
+ */
+ metricSpecifications?: MetricSpecification[];
+}
+
+/**
+ * @interface
+ * An interface representing Operation.
+ * Microsoft.NetApp REST API operation definition.
+ *
+ */
+export interface Operation {
+ /**
+ * @member {string} [name] Operation name: {provider}/{resource}/{operation}
+ */
+ name?: string;
+ /**
+ * @member {OperationDisplay} [display] Display metadata associated with the
+ * operation.
+ */
+ display?: OperationDisplay;
+ /**
+ * @member {string} [origin] The origin of operations.
+ */
+ origin?: string;
+ /**
+ * @member {ServiceSpecification} [serviceSpecification] One property of
+ * operation, include metric specifications.
+ */
+ serviceSpecification?: ServiceSpecification;
+}
+
+/**
+ * @interface
+ * An interface representing NetAppAccount.
+ * NetApp account resource
+ *
+ * @extends BaseResource
+ */
+export interface NetAppAccount extends BaseResource {
+ /**
+ * @member {string} location Resource location
+ */
+ location: string;
+ /**
+ * @member {string} [id] Resource Id
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly id?: string;
+ /**
+ * @member {string} [name] Resource name
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly name?: string;
+ /**
+ * @member {string} [type] Resource type
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly type?: string;
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+ /**
+ * @member {string} [provisioningState] Azure lifecycle management
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly provisioningState?: string;
+}
+
+/**
+ * @interface
+ * An interface representing NetAppAccountPatch.
+ * NetApp account patch resource
+ *
+ * @extends BaseResource
+ */
+export interface NetAppAccountPatch extends BaseResource {
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+}
+
+/**
+ * @interface
+ * An interface representing CapacityPool.
+ * Capacity pool resource
+ *
+ * @extends BaseResource
+ */
+export interface CapacityPool extends BaseResource {
+ /**
+ * @member {string} location Resource location
+ */
+ location: string;
+ /**
+ * @member {string} [id] Resource Id
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly id?: string;
+ /**
+ * @member {string} [name] Resource name
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly name?: string;
+ /**
+ * @member {string} [type] Resource type
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly type?: string;
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+ /**
+ * @member {string} [poolId] poolId. UUID v4 used to identify the Pool
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly poolId?: string;
+ /**
+ * @member {number} [size] size. Provisioned size of the pool (in bytes).
+ * Allowed values are in 4TiB chunks (value must be multiply of
+ * 4398046511104). Default value: 4398046511104 .
+ */
+ size?: number;
+ /**
+ * @member {ServiceLevel} [serviceLevel] serviceLevel. The service level of
+ * the file system. Possible values include: 'Standard', 'Premium',
+ * 'Extreme'. Default value: 'Premium' .
+ */
+ serviceLevel?: ServiceLevel;
+ /**
+ * @member {string} [provisioningState] Azure lifecycle management
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly provisioningState?: string;
+}
+
+/**
+ * @interface
+ * An interface representing CapacityPoolPatch.
+ * Capacity pool patch resource
+ *
+ * @extends BaseResource
+ */
+export interface CapacityPoolPatch extends BaseResource {
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+}
+
+/**
+ * @interface
+ * An interface representing Volume.
+ * Volume resource
+ *
+ * @extends BaseResource
+ */
+export interface Volume extends BaseResource {
+ /**
+ * @member {string} location Resource location
+ */
+ location: string;
+ /**
+ * @member {string} [id] Resource Id
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly id?: string;
+ /**
+ * @member {string} [name] Resource name
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly name?: string;
+ /**
+ * @member {string} [type] Resource type
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly type?: string;
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+ /**
+ * @member {string} [fileSystemId] FileSystem ID. Unique FileSystem
+ * Identifier.
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly fileSystemId?: string;
+ /**
+ * @member {string} creationToken Creation Token or File Path. A unique file
+ * path for the volume. Used when creating mount targets
+ */
+ creationToken: string;
+ /**
+ * @member {ServiceLevel} serviceLevel serviceLevel. The service level of the
+ * file system. Possible values include: 'Standard', 'Premium', 'Extreme'.
+ * Default value: 'Premium' .
+ */
+ serviceLevel: ServiceLevel;
+ /**
+ * @member {number} [usageThreshold] usageThreshold. Maximum storage quota
+ * allowed for a file system in bytes. This is a soft quota used for alerting
+ * only. Minimum size is 100 GiB. Upper limit is 100TiB. Default value:
+ * 107374182400 .
+ */
+ usageThreshold?: number;
+ /**
+ * @member {string} [provisioningState] Azure lifecycle management
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly provisioningState?: string;
+ /**
+ * @member {string} [subnetId] The Azure Resource URI for a delegated subnet.
+ * Must have the delegation Microsoft.NetApp/volumes
+ */
+ subnetId?: string;
+}
+
+/**
+ * @interface
+ * An interface representing VolumePatch.
+ * Volume patch resource
+ *
+ * @extends BaseResource
+ */
+export interface VolumePatch extends BaseResource {
+ /**
+ * @member {string} [location] Resource location
+ */
+ location?: string;
+ /**
+ * @member {string} [id] Resource Id
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly id?: string;
+ /**
+ * @member {string} [name] Resource name
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly name?: string;
+ /**
+ * @member {string} [type] Resource type
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly type?: string;
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+ /**
+ * @member {ServiceLevel} [serviceLevel] serviceLevel. The service level of
+ * the file system. Possible values include: 'Standard', 'Premium',
+ * 'Extreme'. Default value: 'Premium' .
+ */
+ serviceLevel?: ServiceLevel;
+ /**
+ * @member {number} [usageThreshold] usageThreshold. Maximum storage quota
+ * allowed for a file system in bytes. This is a soft quota used for alerting
+ * only. Minimum size is 100 GiB. Upper limit is 100TiB. Default value:
+ * 107374182400 .
+ */
+ usageThreshold?: number;
+}
+
+/**
+ * @interface
+ * An interface representing MountTarget.
+ * Mount Target
+ *
+ */
+export interface MountTarget {
+ /**
+ * @member {string} location Resource location
+ */
+ location: string;
+ /**
+ * @member {string} [id] Resource Id
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly id?: string;
+ /**
+ * @member {string} [name] Resource name
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly name?: string;
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+ /**
+ * @member {string} [mountTargetId] mountTargetId. UUID v4 used to identify
+ * the MountTarget
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly mountTargetId?: string;
+ /**
+ * @member {string} fileSystemId fileSystemId. UUID v4 used to identify the
+ * MountTarget
+ */
+ fileSystemId: string;
+ /**
+ * @member {string} [ipAddress] ipAddress. The mount target's IPv4 address
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly ipAddress?: string;
+ /**
+ * @member {number} [vlanId] vlanid. Vlan Id
+ */
+ vlanId?: number;
+ /**
+ * @member {string} [startIp] startIp. The start of IPv4 address range to use
+ * when creating a new mount target
+ */
+ startIp?: string;
+ /**
+ * @member {string} [endIp] startIp. The end of IPv4 address range to use
+ * when creating a new mount target
+ */
+ endIp?: string;
+ /**
+ * @member {string} [gateway] gateway. The gateway of the IPv4 address range
+ * to use when creating a new mount target
+ */
+ gateway?: string;
+ /**
+ * @member {string} [netmask] netmask. The netmask of the IPv4 address range
+ * to use when creating a new mount target
+ */
+ netmask?: string;
+ /**
+ * @member {string} [provisioningState] Azure lifecycle management
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly provisioningState?: string;
+}
+
+/**
+ * @interface
+ * An interface representing Snapshot.
+ * Snapshot of a Volume
+ *
+ * @extends BaseResource
+ */
+export interface Snapshot extends BaseResource {
+ /**
+ * @member {string} location Resource location
+ */
+ location: string;
+ /**
+ * @member {string} [id] Resource Id
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly id?: string;
+ /**
+ * @member {string} [name] Resource name
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly name?: string;
+ /**
+ * @member {string} [type] Resource type
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly type?: string;
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+ /**
+ * @member {string} [snapshotId] snapshotId. UUID v4 used to identify the
+ * Snapshot
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly snapshotId?: string;
+ /**
+ * @member {string} fileSystemId fileSystemId. UUID v4 used to identify the
+ * FileSystem
+ */
+ fileSystemId: string;
+ /**
+ * @member {Date} [creationDate] name. The creation date of the snapshot
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly creationDate?: Date;
+ /**
+ * @member {string} [provisioningState] Azure lifecycle management
+ * **NOTE: This property will not be serialized. It can only be populated by
+ * the server.**
+ */
+ readonly provisioningState?: string;
+}
+
+/**
+ * @interface
+ * An interface representing SnapshotPatch.
+ * Snapshot patch
+ *
+ * @extends BaseResource
+ */
+export interface SnapshotPatch extends BaseResource {
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+}
+
+/**
+ * @interface
+ * An interface representing ErrorModel.
+ * Error response describing why the operation failed.
+ *
+ */
+export interface ErrorModel {
+ /**
+ * @member {string} code Error code
+ */
+ code: string;
+ /**
+ * @member {string} message Detailed error message
+ */
+ message: string;
+}
+
+/**
+ * @interface
+ * An interface representing AccountsCreateOrUpdateOptionalParams.
+ * Optional Parameters.
+ *
+ * @extends RequestOptionsBase
+ */
+export interface AccountsCreateOrUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+}
+
+/**
+ * @interface
+ * An interface representing AccountsUpdateOptionalParams.
+ * Optional Parameters.
+ *
+ * @extends RequestOptionsBase
+ */
+export interface AccountsUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+}
+
+/**
+ * @interface
+ * An interface representing AccountsBeginCreateOrUpdateOptionalParams.
+ * Optional Parameters.
+ *
+ * @extends RequestOptionsBase
+ */
+export interface AccountsBeginCreateOrUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+}
+
+/**
+ * @interface
+ * An interface representing PoolsUpdateOptionalParams.
+ * Optional Parameters.
+ *
+ * @extends RequestOptionsBase
+ */
+export interface PoolsUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+}
+
+/**
+ * @interface
+ * An interface representing SnapshotsUpdateOptionalParams.
+ * Optional Parameters.
+ *
+ * @extends RequestOptionsBase
+ */
+export interface SnapshotsUpdateOptionalParams extends msRest.RequestOptionsBase {
+ /**
+ * @member {any} [tags] Resource tags
+ */
+ tags?: any;
+}
+
+/**
+ * @interface
+ * An interface representing AzureNetAppFilesManagementClientOptions.
+ * @extends AzureServiceClientOptions
+ */
+export interface AzureNetAppFilesManagementClientOptions extends AzureServiceClientOptions {
+ /**
+ * @member {string} [baseUri]
+ */
+ baseUri?: string;
+}
+
+
+/**
+ * @interface
+ * An interface representing the OperationListResult.
+ * Result of the request to list Cloud Volume operations. It contains a list of
+ * operations and a URL link to get the next set of results.
+ *
+ * @extends Array
+ */
+export interface OperationListResult extends Array {
+}
+
+/**
+ * @interface
+ * An interface representing the NetAppAccountList.
+ * List of NetApp account resources
+ *
+ * @extends Array
+ */
+export interface NetAppAccountList extends Array {
+}
+
+/**
+ * @interface
+ * An interface representing the CapacityPoolList.
+ * List of capacity pool resources
+ *
+ * @extends Array
+ */
+export interface CapacityPoolList extends Array {
+}
+
+/**
+ * @interface
+ * An interface representing the VolumeList.
+ * List of volume resources
+ *
+ * @extends Array
+ */
+export interface VolumeList extends Array {
+}
+
+/**
+ * @interface
+ * An interface representing the MountTargetList.
+ * List of Mount Targets
+ *
+ * @extends Array
+ */
+export interface MountTargetList extends Array {
+}
+
+/**
+ * @interface
+ * An interface representing the SnapshotsList.
+ * List of Snapshots
+ *
+ * @extends Array
+ */
+export interface SnapshotsList extends Array {
+}
+
+/**
+ * Defines values for ServiceLevel.
+ * Possible values include: 'Standard', 'Premium', 'Extreme'
+ * @readonly
+ * @enum {string}
+ */
+export type ServiceLevel = 'Standard' | 'Premium' | 'Extreme';
+
+/**
+ * Contains response data for the list operation.
+ */
+export type OperationsListResponse = OperationListResult & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: OperationListResult;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type AccountsListResponse = NetAppAccountList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: NetAppAccountList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type AccountsGetResponse = NetAppAccount & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: NetAppAccount;
+ };
+};
+
+/**
+ * Contains response data for the createOrUpdate operation.
+ */
+export type AccountsCreateOrUpdateResponse = NetAppAccount & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: NetAppAccount;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type AccountsUpdateResponse = NetAppAccount & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: NetAppAccount;
+ };
+};
+
+/**
+ * Contains response data for the beginCreateOrUpdate operation.
+ */
+export type AccountsBeginCreateOrUpdateResponse = NetAppAccount & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: NetAppAccount;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type PoolsListResponse = CapacityPoolList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: CapacityPoolList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type PoolsGetResponse = CapacityPool & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: CapacityPool;
+ };
+};
+
+/**
+ * Contains response data for the createOrUpdate operation.
+ */
+export type PoolsCreateOrUpdateResponse = CapacityPool & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: CapacityPool;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type PoolsUpdateResponse = CapacityPool & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: CapacityPool;
+ };
+};
+
+/**
+ * Contains response data for the beginCreateOrUpdate operation.
+ */
+export type PoolsBeginCreateOrUpdateResponse = CapacityPool & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: CapacityPool;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type VolumesListResponse = VolumeList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: VolumeList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type VolumesGetResponse = Volume & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Volume;
+ };
+};
+
+/**
+ * Contains response data for the createOrUpdate operation.
+ */
+export type VolumesCreateOrUpdateResponse = Volume & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Volume;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type VolumesUpdateResponse = Volume & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Volume;
+ };
+};
+
+/**
+ * Contains response data for the beginCreateOrUpdate operation.
+ */
+export type VolumesBeginCreateOrUpdateResponse = Volume & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Volume;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type MountTargetsListResponse = MountTargetList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: MountTargetList;
+ };
+};
+
+/**
+ * Contains response data for the list operation.
+ */
+export type SnapshotsListResponse = SnapshotsList & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: SnapshotsList;
+ };
+};
+
+/**
+ * Contains response data for the get operation.
+ */
+export type SnapshotsGetResponse = Snapshot & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Snapshot;
+ };
+};
+
+/**
+ * Contains response data for the create operation.
+ */
+export type SnapshotsCreateResponse = Snapshot & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Snapshot;
+ };
+};
+
+/**
+ * Contains response data for the update operation.
+ */
+export type SnapshotsUpdateResponse = Snapshot & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Snapshot;
+ };
+};
+
+/**
+ * Contains response data for the beginCreate operation.
+ */
+export type SnapshotsBeginCreateResponse = Snapshot & {
+ /**
+ * The underlying HTTP response.
+ */
+ _response: msRest.HttpResponse & {
+ /**
+ * The response body as text (string format)
+ */
+ bodyAsText: string;
+ /**
+ * The response body as parsed JSON or XML
+ */
+ parsedBody: Snapshot;
+ };
+};
diff --git a/packages/@azure/arm-netapp/lib/models/mappers.ts b/packages/@azure/arm-netapp/lib/models/mappers.ts
new file mode 100644
index 000000000000..0597cd7c690b
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/mappers.ts
@@ -0,0 +1,878 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import { CloudErrorMapper, BaseResourceMapper } from "@azure/ms-rest-azure-js";
+import * as msRest from "@azure/ms-rest-js";
+
+export const CloudError = CloudErrorMapper;
+export const BaseResource = BaseResourceMapper;
+
+export const OperationDisplay: msRest.CompositeMapper = {
+ serializedName: "Operation_display",
+ type: {
+ name: "Composite",
+ className: "OperationDisplay",
+ modelProperties: {
+ provider: {
+ serializedName: "provider",
+ type: {
+ name: "String"
+ }
+ },
+ resource: {
+ serializedName: "resource",
+ type: {
+ name: "String"
+ }
+ },
+ operation: {
+ serializedName: "operation",
+ type: {
+ name: "String"
+ }
+ },
+ description: {
+ serializedName: "description",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const Dimension: msRest.CompositeMapper = {
+ serializedName: "Dimension",
+ type: {
+ name: "Composite",
+ className: "Dimension",
+ modelProperties: {
+ name: {
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ displayName: {
+ serializedName: "displayName",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const MetricSpecification: msRest.CompositeMapper = {
+ serializedName: "MetricSpecification",
+ type: {
+ name: "Composite",
+ className: "MetricSpecification",
+ modelProperties: {
+ name: {
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ displayName: {
+ serializedName: "displayName",
+ type: {
+ name: "String"
+ }
+ },
+ displayDescription: {
+ serializedName: "displayDescription",
+ type: {
+ name: "String"
+ }
+ },
+ unit: {
+ serializedName: "unit",
+ type: {
+ name: "String"
+ }
+ },
+ dimensions: {
+ serializedName: "dimensions",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "Dimension"
+ }
+ }
+ }
+ },
+ aggregationType: {
+ serializedName: "aggregationType",
+ type: {
+ name: "String"
+ }
+ },
+ fillGapWithZero: {
+ serializedName: "fillGapWithZero",
+ type: {
+ name: "Boolean"
+ }
+ },
+ category: {
+ serializedName: "category",
+ type: {
+ name: "String"
+ }
+ },
+ resourceIdDimensionNameOverride: {
+ serializedName: "resourceIdDimensionNameOverride",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const ServiceSpecification: msRest.CompositeMapper = {
+ serializedName: "ServiceSpecification",
+ type: {
+ name: "Composite",
+ className: "ServiceSpecification",
+ modelProperties: {
+ metricSpecifications: {
+ serializedName: "metricSpecifications",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "MetricSpecification"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const Operation: msRest.CompositeMapper = {
+ serializedName: "Operation",
+ type: {
+ name: "Composite",
+ className: "Operation",
+ modelProperties: {
+ name: {
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ display: {
+ serializedName: "display",
+ type: {
+ name: "Composite",
+ className: "OperationDisplay"
+ }
+ },
+ origin: {
+ serializedName: "origin",
+ type: {
+ name: "String"
+ }
+ },
+ serviceSpecification: {
+ serializedName: "properties.serviceSpecification",
+ type: {
+ name: "Composite",
+ className: "ServiceSpecification"
+ }
+ }
+ }
+ }
+};
+
+export const NetAppAccount: msRest.CompositeMapper = {
+ serializedName: "netAppAccount",
+ type: {
+ name: "Composite",
+ className: "NetAppAccount",
+ modelProperties: {
+ location: {
+ required: true,
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ },
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ },
+ name: {
+ readOnly: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ type: {
+ readOnly: true,
+ serializedName: "type",
+ type: {
+ name: "String"
+ }
+ },
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ },
+ provisioningState: {
+ readOnly: true,
+ serializedName: "properties.provisioningState",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const NetAppAccountPatch: msRest.CompositeMapper = {
+ serializedName: "netAppAccountPatch",
+ type: {
+ name: "Composite",
+ className: "NetAppAccountPatch",
+ modelProperties: {
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ }
+ }
+ }
+};
+
+export const CapacityPool: msRest.CompositeMapper = {
+ serializedName: "capacityPool",
+ type: {
+ name: "Composite",
+ className: "CapacityPool",
+ modelProperties: {
+ location: {
+ required: true,
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ },
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ },
+ name: {
+ readOnly: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ type: {
+ readOnly: true,
+ serializedName: "type",
+ type: {
+ name: "String"
+ }
+ },
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ },
+ poolId: {
+ readOnly: true,
+ serializedName: "properties.poolId",
+ constraints: {
+ MaxLength: 36,
+ MinLength: 36,
+ Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/
+ },
+ type: {
+ name: "String"
+ }
+ },
+ size: {
+ serializedName: "properties.size",
+ defaultValue: 4398046511104,
+ constraints: {
+ InclusiveMaximum: 549755813888000,
+ InclusiveMinimum: 4398046511104
+ },
+ type: {
+ name: "Number"
+ }
+ },
+ serviceLevel: {
+ serializedName: "properties.serviceLevel",
+ defaultValue: 'Premium',
+ type: {
+ name: "String"
+ }
+ },
+ provisioningState: {
+ readOnly: true,
+ serializedName: "properties.provisioningState",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const CapacityPoolPatch: msRest.CompositeMapper = {
+ serializedName: "capacityPoolPatch",
+ type: {
+ name: "Composite",
+ className: "CapacityPoolPatch",
+ modelProperties: {
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ }
+ }
+ }
+};
+
+export const Volume: msRest.CompositeMapper = {
+ serializedName: "volume",
+ type: {
+ name: "Composite",
+ className: "Volume",
+ modelProperties: {
+ location: {
+ required: true,
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ },
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ },
+ name: {
+ readOnly: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ type: {
+ readOnly: true,
+ serializedName: "type",
+ type: {
+ name: "String"
+ }
+ },
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ },
+ fileSystemId: {
+ readOnly: true,
+ serializedName: "properties.fileSystemId",
+ constraints: {
+ MaxLength: 36,
+ MinLength: 36,
+ Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/
+ },
+ type: {
+ name: "String"
+ }
+ },
+ creationToken: {
+ required: true,
+ serializedName: "properties.creationToken",
+ type: {
+ name: "String"
+ }
+ },
+ serviceLevel: {
+ required: true,
+ serializedName: "properties.serviceLevel",
+ defaultValue: 'Premium',
+ type: {
+ name: "String"
+ }
+ },
+ usageThreshold: {
+ serializedName: "properties.usageThreshold",
+ defaultValue: 107374182400,
+ constraints: {
+ InclusiveMaximum: 109951162777600,
+ InclusiveMinimum: 107374182400
+ },
+ type: {
+ name: "Number"
+ }
+ },
+ provisioningState: {
+ readOnly: true,
+ serializedName: "properties.provisioningState",
+ type: {
+ name: "String"
+ }
+ },
+ subnetId: {
+ serializedName: "properties.subnetId",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const VolumePatch: msRest.CompositeMapper = {
+ serializedName: "volumePatch",
+ type: {
+ name: "Composite",
+ className: "VolumePatch",
+ modelProperties: {
+ location: {
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ },
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ },
+ name: {
+ readOnly: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ type: {
+ readOnly: true,
+ serializedName: "type",
+ type: {
+ name: "String"
+ }
+ },
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ },
+ serviceLevel: {
+ serializedName: "properties.serviceLevel",
+ defaultValue: 'Premium',
+ type: {
+ name: "String"
+ }
+ },
+ usageThreshold: {
+ serializedName: "properties.usageThreshold",
+ defaultValue: 107374182400,
+ constraints: {
+ InclusiveMaximum: 109951162777600,
+ InclusiveMinimum: 107374182400
+ },
+ type: {
+ name: "Number"
+ }
+ }
+ }
+ }
+};
+
+export const MountTarget: msRest.CompositeMapper = {
+ serializedName: "mountTarget",
+ type: {
+ name: "Composite",
+ className: "MountTarget",
+ modelProperties: {
+ location: {
+ required: true,
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ },
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ },
+ name: {
+ readOnly: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ },
+ mountTargetId: {
+ readOnly: true,
+ serializedName: "properties.mountTargetId",
+ constraints: {
+ MaxLength: 36,
+ MinLength: 36,
+ Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/
+ },
+ type: {
+ name: "String"
+ }
+ },
+ fileSystemId: {
+ required: true,
+ serializedName: "properties.fileSystemId",
+ constraints: {
+ MaxLength: 36,
+ MinLength: 36,
+ Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/
+ },
+ type: {
+ name: "String"
+ }
+ },
+ ipAddress: {
+ readOnly: true,
+ serializedName: "properties.ipAddress",
+ type: {
+ name: "String"
+ }
+ },
+ vlanId: {
+ serializedName: "properties.vlanId",
+ type: {
+ name: "Number"
+ }
+ },
+ startIp: {
+ serializedName: "properties.startIp",
+ type: {
+ name: "String"
+ }
+ },
+ endIp: {
+ serializedName: "properties.endIp",
+ type: {
+ name: "String"
+ }
+ },
+ gateway: {
+ serializedName: "properties.gateway",
+ type: {
+ name: "String"
+ }
+ },
+ netmask: {
+ serializedName: "properties.netmask",
+ type: {
+ name: "String"
+ }
+ },
+ provisioningState: {
+ readOnly: true,
+ serializedName: "properties.provisioningState",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const Snapshot: msRest.CompositeMapper = {
+ serializedName: "snapshot",
+ type: {
+ name: "Composite",
+ className: "Snapshot",
+ modelProperties: {
+ location: {
+ required: true,
+ serializedName: "location",
+ type: {
+ name: "String"
+ }
+ },
+ id: {
+ readOnly: true,
+ serializedName: "id",
+ type: {
+ name: "String"
+ }
+ },
+ name: {
+ readOnly: true,
+ serializedName: "name",
+ type: {
+ name: "String"
+ }
+ },
+ type: {
+ readOnly: true,
+ serializedName: "type",
+ type: {
+ name: "String"
+ }
+ },
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ },
+ snapshotId: {
+ readOnly: true,
+ serializedName: "properties.snapshotId",
+ constraints: {
+ MaxLength: 36,
+ MinLength: 36,
+ Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/
+ },
+ type: {
+ name: "String"
+ }
+ },
+ fileSystemId: {
+ required: true,
+ serializedName: "properties.fileSystemId",
+ constraints: {
+ MaxLength: 36,
+ MinLength: 36,
+ Pattern: /^[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}$/
+ },
+ type: {
+ name: "String"
+ }
+ },
+ creationDate: {
+ readOnly: true,
+ serializedName: "properties.creationDate",
+ type: {
+ name: "DateTime"
+ }
+ },
+ provisioningState: {
+ readOnly: true,
+ serializedName: "properties.provisioningState",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const SnapshotPatch: msRest.CompositeMapper = {
+ serializedName: "snapshotPatch",
+ type: {
+ name: "Composite",
+ className: "SnapshotPatch",
+ modelProperties: {
+ tags: {
+ serializedName: "tags",
+ type: {
+ name: "Object"
+ }
+ }
+ }
+ }
+};
+
+export const ErrorModel: msRest.CompositeMapper = {
+ serializedName: "error",
+ type: {
+ name: "Composite",
+ className: "ErrorModel",
+ modelProperties: {
+ code: {
+ required: true,
+ serializedName: "code",
+ type: {
+ name: "String"
+ }
+ },
+ message: {
+ required: true,
+ serializedName: "message",
+ type: {
+ name: "String"
+ }
+ }
+ }
+ }
+};
+
+export const OperationListResult: msRest.CompositeMapper = {
+ serializedName: "OperationListResult",
+ type: {
+ name: "Composite",
+ className: "OperationListResult",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "Operation"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const NetAppAccountList: msRest.CompositeMapper = {
+ serializedName: "netAppAccountList",
+ type: {
+ name: "Composite",
+ className: "NetAppAccountList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "NetAppAccount"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const CapacityPoolList: msRest.CompositeMapper = {
+ serializedName: "capacityPoolList",
+ type: {
+ name: "Composite",
+ className: "CapacityPoolList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "CapacityPool"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const VolumeList: msRest.CompositeMapper = {
+ serializedName: "volumeList",
+ type: {
+ name: "Composite",
+ className: "VolumeList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "Volume"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const MountTargetList: msRest.CompositeMapper = {
+ serializedName: "mountTargetList",
+ type: {
+ name: "Composite",
+ className: "MountTargetList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "MountTarget"
+ }
+ }
+ }
+ }
+ }
+ }
+};
+
+export const SnapshotsList: msRest.CompositeMapper = {
+ serializedName: "snapshotsList",
+ type: {
+ name: "Composite",
+ className: "SnapshotsList",
+ modelProperties: {
+ value: {
+ serializedName: "",
+ type: {
+ name: "Sequence",
+ element: {
+ type: {
+ name: "Composite",
+ className: "Snapshot"
+ }
+ }
+ }
+ }
+ }
+ }
+};
diff --git a/packages/@azure/arm-netapp/lib/models/mountTargetsMappers.ts b/packages/@azure/arm-netapp/lib/models/mountTargetsMappers.ts
new file mode 100644
index 000000000000..8e1c6f7f9853
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/mountTargetsMappers.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+export {
+ MountTargetList,
+ MountTarget,
+ ErrorModel
+} from "../models/mappers";
+
diff --git a/packages/@azure/arm-netapp/lib/models/operationsMappers.ts b/packages/@azure/arm-netapp/lib/models/operationsMappers.ts
new file mode 100644
index 000000000000..76efe7592d9d
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/operationsMappers.ts
@@ -0,0 +1,20 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+export {
+ OperationListResult,
+ Operation,
+ OperationDisplay,
+ ServiceSpecification,
+ MetricSpecification,
+ Dimension,
+ ErrorModel
+} from "../models/mappers";
+
diff --git a/packages/@azure/arm-netapp/lib/models/parameters.ts b/packages/@azure/arm-netapp/lib/models/parameters.ts
new file mode 100644
index 000000000000..d352293435e4
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/parameters.ts
@@ -0,0 +1,93 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+
+export const acceptLanguage: msRest.OperationParameter = {
+ parameterPath: "acceptLanguage",
+ mapper: {
+ serializedName: "accept-language",
+ defaultValue: 'en-US',
+ type: {
+ name: "String"
+ }
+ }
+};
+export const accountName: msRest.OperationURLParameter = {
+ parameterPath: "accountName",
+ mapper: {
+ required: true,
+ serializedName: "accountName",
+ type: {
+ name: "String"
+ }
+ }
+};
+export const apiVersion: msRest.OperationQueryParameter = {
+ parameterPath: "apiVersion",
+ mapper: {
+ required: true,
+ serializedName: "api-version",
+ defaultValue: '2017-08-15',
+ type: {
+ name: "String"
+ }
+ }
+};
+export const poolName: msRest.OperationURLParameter = {
+ parameterPath: "poolName",
+ mapper: {
+ required: true,
+ serializedName: "poolName",
+ type: {
+ name: "String"
+ }
+ }
+};
+export const resourceGroup: msRest.OperationURLParameter = {
+ parameterPath: "resourceGroup",
+ mapper: {
+ required: true,
+ serializedName: "resourceGroup",
+ type: {
+ name: "String"
+ }
+ }
+};
+export const snapshotName: msRest.OperationURLParameter = {
+ parameterPath: "snapshotName",
+ mapper: {
+ required: true,
+ serializedName: "snapshotName",
+ type: {
+ name: "String"
+ }
+ }
+};
+export const subscriptionId: msRest.OperationURLParameter = {
+ parameterPath: "subscriptionId",
+ mapper: {
+ required: true,
+ serializedName: "subscriptionId",
+ type: {
+ name: "String"
+ }
+ }
+};
+export const volumeName: msRest.OperationURLParameter = {
+ parameterPath: "volumeName",
+ mapper: {
+ required: true,
+ serializedName: "volumeName",
+ type: {
+ name: "String"
+ }
+ }
+};
diff --git a/packages/@azure/arm-netapp/lib/models/poolsMappers.ts b/packages/@azure/arm-netapp/lib/models/poolsMappers.ts
new file mode 100644
index 000000000000..d6893a14ab4b
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/poolsMappers.ts
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+export {
+ CapacityPoolList,
+ CapacityPool,
+ BaseResource,
+ ErrorModel,
+ CapacityPoolPatch,
+ NetAppAccount,
+ NetAppAccountPatch,
+ Volume,
+ VolumePatch,
+ Snapshot,
+ SnapshotPatch
+} from "../models/mappers";
+
diff --git a/packages/@azure/arm-netapp/lib/models/snapshotsMappers.ts b/packages/@azure/arm-netapp/lib/models/snapshotsMappers.ts
new file mode 100644
index 000000000000..858298c24d59
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/snapshotsMappers.ts
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+export {
+ SnapshotsList,
+ Snapshot,
+ BaseResource,
+ ErrorModel,
+ SnapshotPatch,
+ NetAppAccount,
+ NetAppAccountPatch,
+ CapacityPool,
+ CapacityPoolPatch,
+ Volume,
+ VolumePatch
+} from "../models/mappers";
+
diff --git a/packages/@azure/arm-netapp/lib/models/volumesMappers.ts b/packages/@azure/arm-netapp/lib/models/volumesMappers.ts
new file mode 100644
index 000000000000..3e60b9672948
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/models/volumesMappers.ts
@@ -0,0 +1,24 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+export {
+ VolumeList,
+ Volume,
+ BaseResource,
+ ErrorModel,
+ VolumePatch,
+ NetAppAccount,
+ NetAppAccountPatch,
+ CapacityPool,
+ CapacityPoolPatch,
+ Snapshot,
+ SnapshotPatch
+} from "../models/mappers";
+
diff --git a/packages/@azure/arm-netapp/lib/operations/accounts.ts b/packages/@azure/arm-netapp/lib/operations/accounts.ts
new file mode 100644
index 000000000000..ac51eb0718d8
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/operations/accounts.ts
@@ -0,0 +1,335 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as msRestAzure from "@azure/ms-rest-azure-js";
+import * as Models from "../models";
+import * as Mappers from "../models/accountsMappers";
+import * as Parameters from "../models/parameters";
+import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext";
+
+/** Class representing a Accounts. */
+export class Accounts {
+ private readonly client: AzureNetAppFilesManagementClientContext;
+
+ /**
+ * Create a Accounts.
+ * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client.
+ */
+ constructor(client: AzureNetAppFilesManagementClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * Lists all NetApp accounts in the resource group
+ * @param resourceGroup The name of the resource group.
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(resourceGroup: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param callback The callback
+ */
+ list(resourceGroup: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(resourceGroup: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(resourceGroup: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Get the NetApp account
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param callback The callback
+ */
+ get(resourceGroup: string, accountName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroup: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create or update a NetApp account
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param location Resource location
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ createOrUpdate(resourceGroup: string, accountName: string, location: string, options?: Models.AccountsCreateOrUpdateOptionalParams): Promise {
+ return this.beginCreateOrUpdate(resourceGroup,accountName,location,options)
+ .then(lroPoller => lroPoller.pollUntilFinished()) as Promise;
+ }
+
+ /**
+ * Delete a NetApp account
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ deleteMethod(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.beginDeleteMethod(resourceGroup,accountName,options)
+ .then(lroPoller => lroPoller.pollUntilFinished());
+ }
+
+ /**
+ * Patch a NetApp account
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ update(resourceGroup: string, accountName: string, options?: Models.AccountsUpdateOptionalParams): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param callback The callback
+ */
+ update(resourceGroup: string, accountName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ update(resourceGroup: string, accountName: string, options: Models.AccountsUpdateOptionalParams, callback: msRest.ServiceCallback): void;
+ update(resourceGroup: string, accountName: string, options?: Models.AccountsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ options
+ },
+ updateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create or update a NetApp account
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param location Resource location
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ beginCreateOrUpdate(resourceGroup: string, accountName: string, location: string, options?: Models.AccountsBeginCreateOrUpdateOptionalParams): Promise {
+ return this.client.sendLRORequest(
+ {
+ resourceGroup,
+ accountName,
+ location,
+ options
+ },
+ beginCreateOrUpdateOperationSpec,
+ options);
+ }
+
+ /**
+ * Delete a NetApp account
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ beginDeleteMethod(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.client.sendLRORequest(
+ {
+ resourceGroup,
+ accountName,
+ options
+ },
+ beginDeleteMethodOperationSpec,
+ options);
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.NetAppAccountList
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const getOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.NetAppAccount
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const updateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PATCH",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: {
+ tags: [
+ "options",
+ "tags"
+ ]
+ },
+ mapper: {
+ ...Mappers.NetAppAccountPatch,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.NetAppAccount
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PUT",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: {
+ location: "location",
+ tags: [
+ "options",
+ "tags"
+ ]
+ },
+ mapper: {
+ ...Mappers.NetAppAccount,
+ required: true
+ }
+ },
+ responses: {
+ 201: {
+ bodyMapper: Mappers.NetAppAccount
+ },
+ 202: {},
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const beginDeleteMethodOperationSpec: msRest.OperationSpec = {
+ httpMethod: "DELETE",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 202: {},
+ 204: {},
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
diff --git a/packages/@azure/arm-netapp/lib/operations/index.ts b/packages/@azure/arm-netapp/lib/operations/index.ts
new file mode 100644
index 000000000000..6372d5483b42
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/operations/index.ts
@@ -0,0 +1,16 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+export * from "./operations";
+export * from "./accounts";
+export * from "./pools";
+export * from "./volumes";
+export * from "./mountTargets";
+export * from "./snapshots";
diff --git a/packages/@azure/arm-netapp/lib/operations/mountTargets.ts b/packages/@azure/arm-netapp/lib/operations/mountTargets.ts
new file mode 100644
index 000000000000..9c9ca115a7e5
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/operations/mountTargets.ts
@@ -0,0 +1,97 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as Models from "../models";
+import * as Mappers from "../models/mountTargetsMappers";
+import * as Parameters from "../models/parameters";
+import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext";
+
+/** Class representing a MountTargets. */
+export class MountTargets {
+ private readonly client: AzureNetAppFilesManagementClientContext;
+
+ /**
+ * Create a MountTargets.
+ * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client.
+ */
+ constructor(client: AzureNetAppFilesManagementClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * List mount targets
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param callback The callback
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/mountTargets",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.MountTargetList
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
diff --git a/packages/@azure/arm-netapp/lib/operations/operations.ts b/packages/@azure/arm-netapp/lib/operations/operations.ts
new file mode 100644
index 000000000000..4618f5e7ecce
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/operations/operations.ts
@@ -0,0 +1,74 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as Models from "../models";
+import * as Mappers from "../models/operationsMappers";
+import * as Parameters from "../models/parameters";
+import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext";
+
+/** Class representing a Operations. */
+export class Operations {
+ private readonly client: AzureNetAppFilesManagementClientContext;
+
+ /**
+ * Create a Operations.
+ * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client.
+ */
+ constructor(client: AzureNetAppFilesManagementClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * Lists all of the available Microsoft.NetApp Rest API operations
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param callback The callback
+ */
+ list(callback: msRest.ServiceCallback): void;
+ /**
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "providers/Microsoft.NetApp/operations",
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.OperationListResult
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
diff --git a/packages/@azure/arm-netapp/lib/operations/pools.ts b/packages/@azure/arm-netapp/lib/operations/pools.ts
new file mode 100644
index 000000000000..74551a910c93
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/operations/pools.ts
@@ -0,0 +1,355 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as msRestAzure from "@azure/ms-rest-azure-js";
+import * as Models from "../models";
+import * as Mappers from "../models/poolsMappers";
+import * as Parameters from "../models/parameters";
+import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext";
+
+/** Class representing a Pools. */
+export class Pools {
+ private readonly client: AzureNetAppFilesManagementClientContext;
+
+ /**
+ * Create a Pools.
+ * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client.
+ */
+ constructor(client: AzureNetAppFilesManagementClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * Lists all capacity pools in the NetApp Account
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param callback The callback
+ */
+ list(resourceGroup: string, accountName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(resourceGroup: string, accountName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(resourceGroup: string, accountName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Get a capacity pool
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param callback The callback
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create or Update a capacity pool
+ * @param body Capacity pool object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ createOrUpdate(body: Models.CapacityPool, resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.beginCreateOrUpdate(body,resourceGroup,accountName,poolName,options)
+ .then(lroPoller => lroPoller.pollUntilFinished()) as Promise;
+ }
+
+ /**
+ * Patch a capacity pool
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ update(resourceGroup: string, accountName: string, poolName: string, options?: Models.PoolsUpdateOptionalParams): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param callback The callback
+ */
+ update(resourceGroup: string, accountName: string, poolName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ update(resourceGroup: string, accountName: string, poolName: string, options: Models.PoolsUpdateOptionalParams, callback: msRest.ServiceCallback): void;
+ update(resourceGroup: string, accountName: string, poolName: string, options?: Models.PoolsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ options
+ },
+ updateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Delete a capacity pool
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ deleteMethod(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.beginDeleteMethod(resourceGroup,accountName,poolName,options)
+ .then(lroPoller => lroPoller.pollUntilFinished());
+ }
+
+ /**
+ * Create or Update a capacity pool
+ * @param body Capacity pool object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ beginCreateOrUpdate(body: Models.CapacityPool, resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.client.sendLRORequest(
+ {
+ body,
+ resourceGroup,
+ accountName,
+ poolName,
+ options
+ },
+ beginCreateOrUpdateOperationSpec,
+ options);
+ }
+
+ /**
+ * Delete a capacity pool
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ beginDeleteMethod(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.client.sendLRORequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ options
+ },
+ beginDeleteMethodOperationSpec,
+ options);
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.CapacityPoolList
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const getOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.CapacityPool
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const updateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PATCH",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: {
+ tags: [
+ "options",
+ "tags"
+ ]
+ },
+ mapper: {
+ ...Mappers.CapacityPoolPatch,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.CapacityPool
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PUT",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: "body",
+ mapper: {
+ ...Mappers.CapacityPool,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.CapacityPool
+ },
+ 201: {
+ bodyMapper: Mappers.CapacityPool
+ },
+ 202: {},
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const beginDeleteMethodOperationSpec: msRest.OperationSpec = {
+ httpMethod: "DELETE",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 202: {},
+ 204: {},
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
diff --git a/packages/@azure/arm-netapp/lib/operations/snapshots.ts b/packages/@azure/arm-netapp/lib/operations/snapshots.ts
new file mode 100644
index 000000000000..a28d115edb6d
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/operations/snapshots.ts
@@ -0,0 +1,398 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as msRestAzure from "@azure/ms-rest-azure-js";
+import * as Models from "../models";
+import * as Mappers from "../models/snapshotsMappers";
+import * as Parameters from "../models/parameters";
+import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext";
+
+/** Class representing a Snapshots. */
+export class Snapshots {
+ private readonly client: AzureNetAppFilesManagementClientContext;
+
+ /**
+ * Create a Snapshots.
+ * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client.
+ */
+ constructor(client: AzureNetAppFilesManagementClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * List snapshots
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param callback The callback
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Get a snapshot
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param callback The callback
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ snapshotName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create a snapshot
+ * @param body Snapshot object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ create(body: Models.Snapshot, resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.beginCreate(body,resourceGroup,accountName,poolName,volumeName,snapshotName,options)
+ .then(lroPoller => lroPoller.pollUntilFinished()) as Promise;
+ }
+
+ /**
+ * Patch a snapshot
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ update(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: Models.SnapshotsUpdateOptionalParams): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param callback The callback
+ */
+ update(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ update(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options: Models.SnapshotsUpdateOptionalParams, callback: msRest.ServiceCallback): void;
+ update(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: Models.SnapshotsUpdateOptionalParams | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ snapshotName,
+ options
+ },
+ updateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Delete snapshot
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ deleteMethod(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.beginDeleteMethod(resourceGroup,accountName,poolName,volumeName,snapshotName,options)
+ .then(lroPoller => lroPoller.pollUntilFinished());
+ }
+
+ /**
+ * Create a snapshot
+ * @param body Snapshot object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ beginCreate(body: Models.Snapshot, resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.client.sendLRORequest(
+ {
+ body,
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ snapshotName,
+ options
+ },
+ beginCreateOperationSpec,
+ options);
+ }
+
+ /**
+ * Delete snapshot
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param snapshotName The name of the mount target
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ beginDeleteMethod(resourceGroup: string, accountName: string, poolName: string, volumeName: string, snapshotName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.client.sendLRORequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ snapshotName,
+ options
+ },
+ beginDeleteMethodOperationSpec,
+ options);
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.SnapshotsList
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const getOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName,
+ Parameters.snapshotName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Snapshot
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const updateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PATCH",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName,
+ Parameters.snapshotName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: {
+ tags: [
+ "options",
+ "tags"
+ ]
+ },
+ mapper: {
+ ...Mappers.SnapshotPatch,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Snapshot
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const beginCreateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PUT",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName,
+ Parameters.snapshotName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: "body",
+ mapper: {
+ ...Mappers.Snapshot,
+ required: true
+ }
+ },
+ responses: {
+ 201: {
+ bodyMapper: Mappers.Snapshot
+ },
+ 202: {},
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const beginDeleteMethodOperationSpec: msRest.OperationSpec = {
+ httpMethod: "DELETE",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}/snapshots/{snapshotName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName,
+ Parameters.snapshotName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 202: {},
+ 204: {},
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
diff --git a/packages/@azure/arm-netapp/lib/operations/volumes.ts b/packages/@azure/arm-netapp/lib/operations/volumes.ts
new file mode 100644
index 000000000000..09558d4252c1
--- /dev/null
+++ b/packages/@azure/arm-netapp/lib/operations/volumes.ts
@@ -0,0 +1,377 @@
+/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for
+ * license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is
+ * regenerated.
+ */
+
+import * as msRest from "@azure/ms-rest-js";
+import * as msRestAzure from "@azure/ms-rest-azure-js";
+import * as Models from "../models";
+import * as Mappers from "../models/volumesMappers";
+import * as Parameters from "../models/parameters";
+import { AzureNetAppFilesManagementClientContext } from "../azureNetAppFilesManagementClientContext";
+
+/** Class representing a Volumes. */
+export class Volumes {
+ private readonly client: AzureNetAppFilesManagementClientContext;
+
+ /**
+ * Create a Volumes.
+ * @param {AzureNetAppFilesManagementClientContext} client Reference to the service client.
+ */
+ constructor(client: AzureNetAppFilesManagementClientContext) {
+ this.client = client;
+ }
+
+ /**
+ * List volumes
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param callback The callback
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ list(resourceGroup: string, accountName: string, poolName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ list(resourceGroup: string, accountName: string, poolName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ options
+ },
+ listOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Get a volume
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param callback The callback
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ get(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ options
+ },
+ getOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Create or update a volume
+ * @param body Volume object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ createOrUpdate(body: Models.Volume, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.beginCreateOrUpdate(body,resourceGroup,accountName,poolName,volumeName,options)
+ .then(lroPoller => lroPoller.pollUntilFinished()) as Promise;
+ }
+
+ /**
+ * Patch a volume
+ * @param body Volume object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ update(body: Models.VolumePatch, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise;
+ /**
+ * @param body Volume object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param callback The callback
+ */
+ update(body: Models.VolumePatch, resourceGroup: string, accountName: string, poolName: string, volumeName: string, callback: msRest.ServiceCallback): void;
+ /**
+ * @param body Volume object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param options The optional parameters
+ * @param callback The callback
+ */
+ update(body: Models.VolumePatch, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options: msRest.RequestOptionsBase, callback: msRest.ServiceCallback): void;
+ update(body: Models.VolumePatch, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase | msRest.ServiceCallback, callback?: msRest.ServiceCallback): Promise {
+ return this.client.sendOperationRequest(
+ {
+ body,
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ options
+ },
+ updateOperationSpec,
+ callback) as Promise;
+ }
+
+ /**
+ * Delete a volume
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ deleteMethod(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.beginDeleteMethod(resourceGroup,accountName,poolName,volumeName,options)
+ .then(lroPoller => lroPoller.pollUntilFinished());
+ }
+
+ /**
+ * Create or update a volume
+ * @param body Volume object supplied in the body of the operation.
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ beginCreateOrUpdate(body: Models.Volume, resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.client.sendLRORequest(
+ {
+ body,
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ options
+ },
+ beginCreateOrUpdateOperationSpec,
+ options);
+ }
+
+ /**
+ * Delete a volume
+ * @param resourceGroup The name of the resource group.
+ * @param accountName The name of the NetApp account
+ * @param poolName The name of the capacity pool
+ * @param volumeName The name of the volume
+ * @param [options] The optional parameters
+ * @returns Promise
+ */
+ beginDeleteMethod(resourceGroup: string, accountName: string, poolName: string, volumeName: string, options?: msRest.RequestOptionsBase): Promise {
+ return this.client.sendLRORequest(
+ {
+ resourceGroup,
+ accountName,
+ poolName,
+ volumeName,
+ options
+ },
+ beginDeleteMethodOperationSpec,
+ options);
+ }
+}
+
+// Operation Specifications
+const serializer = new msRest.Serializer(Mappers);
+const listOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.VolumeList
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const getOperationSpec: msRest.OperationSpec = {
+ httpMethod: "GET",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Volume
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const updateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PATCH",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: "body",
+ mapper: {
+ ...Mappers.VolumePatch,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Volume
+ },
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const beginCreateOrUpdateOperationSpec: msRest.OperationSpec = {
+ httpMethod: "PUT",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ requestBody: {
+ parameterPath: "body",
+ mapper: {
+ ...Mappers.Volume,
+ required: true
+ }
+ },
+ responses: {
+ 200: {
+ bodyMapper: Mappers.Volume
+ },
+ 201: {
+ bodyMapper: Mappers.Volume
+ },
+ 202: {},
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
+
+const beginDeleteMethodOperationSpec: msRest.OperationSpec = {
+ httpMethod: "DELETE",
+ path: "subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.NetApp/netAppAccounts/{accountName}/capacityPools/{poolName}/volumes/{volumeName}",
+ urlParameters: [
+ Parameters.subscriptionId,
+ Parameters.resourceGroup,
+ Parameters.accountName,
+ Parameters.poolName,
+ Parameters.volumeName
+ ],
+ queryParameters: [
+ Parameters.apiVersion
+ ],
+ headerParameters: [
+ Parameters.acceptLanguage
+ ],
+ responses: {
+ 202: {},
+ 204: {},
+ default: {
+ bodyMapper: Mappers.ErrorModel
+ }
+ },
+ serializer
+};
diff --git a/packages/@azure/arm-netapp/package.json b/packages/@azure/arm-netapp/package.json
new file mode 100644
index 000000000000..72bddd62c28e
--- /dev/null
+++ b/packages/@azure/arm-netapp/package.json
@@ -0,0 +1,56 @@
+{
+ "name": "@azure/arm-netapp",
+ "author": "Microsoft Corporation",
+ "description": "AzureNetAppFilesManagementClient Library with typescript type definitions for node.js and browser.",
+ "version": "1.0.0",
+ "dependencies": {
+ "@azure/ms-rest-azure-js": "^1.2.0",
+ "@azure/ms-rest-js": "^1.2.0",
+ "tslib": "^1.9.3"
+ },
+ "keywords": [
+ "node",
+ "azure",
+ "typescript",
+ "browser",
+ "isomorphic"
+ ],
+ "license": "MIT",
+ "main": "./dist/arm-netapp.js",
+ "module": "./esm/azureNetAppFilesManagementClient.js",
+ "types": "./esm/azureNetAppFilesManagementClient.d.ts",
+ "devDependencies": {
+ "typescript": "^3.1.1",
+ "rollup": "^0.66.2",
+ "rollup-plugin-node-resolve": "^3.4.0",
+ "rollup-plugin-sourcemaps": "^0.4.2",
+ "uglify-js": "^3.4.9"
+ },
+ "homepage": "https://github.com/azure/azure-sdk-for-js/tree/master/packages/@azure/arm-netapp",
+ "repository": {
+ "type": "git",
+ "url": "https://github.com/azure/azure-sdk-for-js.git"
+ },
+ "bugs": {
+ "url": "https://github.com/azure/azure-sdk-for-js/issues"
+ },
+ "files": [
+ "dist/**/*.js",
+ "dist/**/*.js.map",
+ "dist/**/*.d.ts",
+ "dist/**/*.d.ts.map",
+ "esm/**/*.js",
+ "esm/**/*.js.map",
+ "esm/**/*.d.ts",
+ "esm/**/*.d.ts.map",
+ "lib/**/*.ts",
+ "rollup.config.js",
+ "tsconfig.json"
+ ],
+ "scripts": {
+ "build": "tsc && rollup -c rollup.config.js && npm run minify",
+ "minify": "uglifyjs -c -m --comments --source-map \"content='./dist/arm-netapp.js.map'\" -o ./dist/arm-netapp.min.js ./dist/arm-netapp.js",
+ "prepack": "npm install && npm run build"
+ },
+ "sideEffects": false
+}
diff --git a/packages/@azure/arm-netapp/rollup.config.js b/packages/@azure/arm-netapp/rollup.config.js
new file mode 100644
index 000000000000..272f762c3eff
--- /dev/null
+++ b/packages/@azure/arm-netapp/rollup.config.js
@@ -0,0 +1,37 @@
+import rollup from "rollup";
+import nodeResolve from "rollup-plugin-node-resolve";
+import sourcemaps from "rollup-plugin-sourcemaps";
+
+/**
+ * @type {rollup.RollupFileOptions}
+ */
+const config = {
+ input: "./esm/azureNetAppFilesManagementClient.js",
+ external: [
+ "@azure/ms-rest-js",
+ "@azure/ms-rest-azure-js"
+ ],
+ output: {
+ file: "./dist/arm-netapp.js",
+ format: "umd",
+ name: "Azure.ArmNetapp",
+ sourcemap: true,
+ globals: {
+ "@azure/ms-rest-js": "msRest",
+ "@azure/ms-rest-azure-js": "msRestAzure"
+ },
+ banner: `/*
+ * Copyright (c) Microsoft Corporation. All rights reserved.
+ * Licensed under the MIT License. See License.txt in the project root for license information.
+ *
+ * Code generated by Microsoft (R) AutoRest Code Generator.
+ * Changes may cause incorrect behavior and will be lost if the code is regenerated.
+ */`
+ },
+ plugins: [
+ nodeResolve({ module: true }),
+ sourcemaps()
+ ]
+};
+
+export default config;
diff --git a/packages/@azure/arm-netapp/tsconfig.json b/packages/@azure/arm-netapp/tsconfig.json
new file mode 100644
index 000000000000..51ea90961ce5
--- /dev/null
+++ b/packages/@azure/arm-netapp/tsconfig.json
@@ -0,0 +1,19 @@
+{
+ "compilerOptions": {
+ "module": "es6",
+ "moduleResolution": "node",
+ "strict": true,
+ "target": "es5",
+ "sourceMap": true,
+ "declarationMap": true,
+ "esModuleInterop": true,
+ "allowSyntheticDefaultImports": true,
+ "forceConsistentCasingInFileNames": true,
+ "lib": ["es6"],
+ "declaration": true,
+ "outDir": "./esm",
+ "importHelpers": true
+ },
+ "include": ["./lib/**/*.ts"],
+ "exclude": ["node_modules"]
+}