@aws-solutions-constructs/core
Version:
Core CDK Construct for patterns library
125 lines (124 loc) • 5.27 kB
TypeScript
/**
* Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.
*
* Licensed under the Apache License, Version 2.0 (the "License"). You may not use this file except in compliance
* with the License. A copy of the License is located at
*
* http://www.apache.org/licenses/LICENSE-2.0
*
* or in the 'license' file accompanying this file. This file is distributed on an 'AS IS' BASIS, WITHOUT WARRANTIES
* OR CONDITIONS OF ANY KIND, express or implied. See the License for the specific language governing permissions
* and limitations under the License.
*/
import * as sagemaker from 'aws-cdk-lib/aws-sagemaker';
import * as ec2 from 'aws-cdk-lib/aws-ec2';
import * as iam from 'aws-cdk-lib/aws-iam';
import { Construct } from 'constructs';
export interface BuildSagemakerNotebookProps {
/**
* Optional user provided props for CfnNotebookInstanceProps
*
* @default - Default props are used
*/
readonly sagemakerNotebookProps?: sagemaker.CfnNotebookInstanceProps | any;
/**
* Optional user provided props to deploy inside vpc
*
* @default - true
*/
readonly deployInsideVpc?: boolean;
/**
* An optional, Existing instance of notebook object.
* If this is set then the sagemakerNotebookProps is ignored
*
* @default - None
*/
readonly existingNotebookObj?: sagemaker.CfnNotebookInstance;
/**
* IAM Role Arn for Sagemaker NoteBookInstance
*
* @default - None
*/
readonly role: iam.Role;
}
export interface BuildSagemakerNotebookResponse {
readonly notebook: sagemaker.CfnNotebookInstance;
readonly vpc?: ec2.IVpc;
readonly securityGroup?: ec2.SecurityGroup;
}
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*
* The constructs deploying Sagemaker services only deploy Sagemaker Endpoints, Endpoint
* Configurations and (already developed) Models. There are no Constructs that deploy Notebooks.
* There doesn't appear to be any references to this function outside the unit test file - so
* this function is unneccessary.
*/
export declare function buildSagemakerNotebook(scope: Construct, id: string, props: BuildSagemakerNotebookProps): BuildSagemakerNotebookResponse;
export interface BuildSagemakerEndpointProps {
/**
* Existing Sagemaker Endpoint object, if this is set then the modelProps, endpointConfigProps, and endpointProps are ignored
*
* @default - None
*/
readonly existingSagemakerEndpointObj?: sagemaker.CfnEndpoint;
/**
* User provided props to create Sagemaker Model
*
* @default - None
*/
readonly modelProps?: sagemaker.CfnModelProps | any;
/**
* User provided props to create Sagemaker Endpoint Configuration
*
* @default - None
*/
readonly endpointConfigProps?: sagemaker.CfnEndpointConfigProps;
/**
* User provided props to create Sagemaker Endpoint
*
* @default - None
*/
readonly endpointProps?: sagemaker.CfnEndpointProps;
/**
* A VPC where the Sagemaker Endpoint will be placed
*
* @default - None
*/
readonly vpc?: ec2.IVpc;
}
export interface BuildSagemakerEndpointResponse {
readonly endpoint: sagemaker.CfnEndpoint;
readonly endpointConfig?: sagemaker.CfnEndpointConfig;
readonly model?: sagemaker.CfnModel;
}
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*/
export declare function BuildSagemakerEndpoint(scope: Construct, id: string, props: BuildSagemakerEndpointProps): BuildSagemakerEndpointResponse;
export interface DeploySagemakerEndpointResponse {
readonly endpoint: sagemaker.CfnEndpoint;
readonly endpointConfig?: sagemaker.CfnEndpointConfig;
readonly model?: sagemaker.CfnModel;
}
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*/
export declare function deploySagemakerEndpoint(scope: Construct, id: string, props: BuildSagemakerEndpointProps): DeploySagemakerEndpointResponse;
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*/
export declare function createSagemakerModel(scope: Construct, modelProps: sagemaker.CfnModelProps, role: iam.Role, vpc?: ec2.IVpc): sagemaker.CfnModel;
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*/
export declare function createSagemakerEndpointConfig(scope: Construct, id: string, modelName: string, endpointConfigProps?: sagemaker.CfnEndpointConfigProps): sagemaker.CfnEndpointConfig;
/**
* @internal This is an internal core function and should not be called directly by Solutions Constructs clients.
*/
export declare function createSagemakerEndpoint(scope: Construct, endpointConfigName: string, endpointProps?: sagemaker.CfnEndpointProps): sagemaker.CfnEndpoint;
export interface SagemakerProps {
readonly existingSagemakerEndpointObj?: sagemaker.CfnEndpoint;
readonly endpointProps?: sagemaker.CfnEndpointProps;
}
export declare function CheckSagemakerProps(propsObject: SagemakerProps | any): void;