/**
 * Data Science API
 * Use the Data Science API to organize your data science work, access data and computing resources, and build, train, deploy and manage models and model deployments. For more information, see [Data Science](https://docs.oracle.com/iaas/data-science/using/data-science.htm).

 * OpenAPI spec version: 20190101
 *
 *
 * NOTE: This class is auto generated by OracleSDKGenerator.
 * Do not edit the class manually.
 *
 * Copyright (c) 2020, 2022, Oracle and/or its affiliates.  All rights reserved.
 * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 */ import * as model from "../model" ; import common = require ( "oci-common" ) ; /**
 * Details for the notebook session configuration.
 */ export interface NotebookSessionConfigurationDetails { /**
     * The shape used to launch the notebook session compute instance.  The list of available shapes in a given compartment can be retrieved using the `ListNotebookSessionShapes` endpoint.
     *
     */ "shape" : string ; /**
     * A notebook session instance is provided with a block storage volume. This specifies the size of the volume in GBs.
     *  Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
     */ "blockStorageSizeInGBs" ? : number ; /**
     * A notebook session instance is provided with a VNIC for network access.  This specifies the [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the subnet to create a VNIC in.  The subnet should be in a VCN with a NAT gateway for egress to the internet.
     *
     */ "subnetId" : string ; "notebookSessionShapeConfigDetails" ? : model . NotebookSessionShapeConfigDetails ; } export namespace NotebookSessionConfigurationDetails { export function getJsonObj ( obj ) { const jsonObj = { ... obj , ... { "notebookSessionShapeConfigDetails" : obj . notebookSessionShapeConfigDetails ? model . NotebookSessionShapeConfigDetails . getJsonObj ( obj . notebookSessionShapeConfigDetails ) : undefined } } ; return jsonObj ; } export function getDeserializedJsonObj ( obj ) { const jsonObj = { ... obj , ... { "notebookSessionShapeConfigDetails" : obj . notebookSessionShapeConfigDetails ? model . NotebookSessionShapeConfigDetails . getDeserializedJsonObj ( obj . notebookSessionShapeConfigDetails ) : undefined } } ; return jsonObj ; } }