// 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.

// Predictions is the the Azure Customer Insights management API provides a RESTful set of web services that interact
// with Azure Customer Insights service to manage your resources. The API has entities that capture the relationship
// between an end user and the Azure Customer Insights service.
import Foundation
import azureSwiftRuntime
extension Commands {
public struct Predictions {
    public static func CreateOrUpdate(resourceGroupName: String, hubName: String, predictionName: String, subscriptionId: String, parameters: PredictionResourceFormatProtocol) -> PredictionsCreateOrUpdate {
        return CreateOrUpdateCommand(resourceGroupName: resourceGroupName, hubName: hubName, predictionName: predictionName, subscriptionId: subscriptionId, parameters: parameters)
    }
    public static func Delete(resourceGroupName: String, hubName: String, predictionName: String, subscriptionId: String) -> PredictionsDelete {
        return DeleteCommand(resourceGroupName: resourceGroupName, hubName: hubName, predictionName: predictionName, subscriptionId: subscriptionId)
    }
    public static func Get(resourceGroupName: String, hubName: String, predictionName: String, subscriptionId: String) -> PredictionsGet {
        return GetCommand(resourceGroupName: resourceGroupName, hubName: hubName, predictionName: predictionName, subscriptionId: subscriptionId)
    }
    public static func GetModelStatus(resourceGroupName: String, hubName: String, predictionName: String, subscriptionId: String) -> PredictionsGetModelStatus {
        return GetModelStatusCommand(resourceGroupName: resourceGroupName, hubName: hubName, predictionName: predictionName, subscriptionId: subscriptionId)
    }
    public static func GetTrainingResults(resourceGroupName: String, hubName: String, predictionName: String, subscriptionId: String) -> PredictionsGetTrainingResults {
        return GetTrainingResultsCommand(resourceGroupName: resourceGroupName, hubName: hubName, predictionName: predictionName, subscriptionId: subscriptionId)
    }
    public static func ListByHub(resourceGroupName: String, hubName: String, subscriptionId: String) -> PredictionsListByHub {
        return ListByHubCommand(resourceGroupName: resourceGroupName, hubName: hubName, subscriptionId: subscriptionId)
    }
    public static func ModelStatus(resourceGroupName: String, hubName: String, predictionName: String, subscriptionId: String, parameters: PredictionModelStatusProtocol) -> PredictionsModelStatus {
        return ModelStatusCommand(resourceGroupName: resourceGroupName, hubName: hubName, predictionName: predictionName, subscriptionId: subscriptionId, parameters: parameters)
    }
}
}
