export interface EdgeMetric {
    /** The dimension of metrics published. */
    Dimension?: string;
    /** Returns the name of the metric. */
    MetricName?: string;
    /** Returns the value of the metric. */
    Value?: number;
    /** Timestamp of when the metric was requested. */
    Timestamp?: string;
}
export interface Model {
    /** The name of the model. */
    ModelName?: string;
    /** The version of the model. */
    ModelVersion?: string;
    /** The timestamp of the last data sample taken. */
    LatestSampleTime?: string;
    /** The timestamp of the last inference that was made. */
    LatestInference?: string;
    /** Information required for model metrics. */
    ModelMetrics?: any[];
}
export interface DeploymentResult {
    /** The name and unique ID of the deployment. */
    DeploymentName?: string;
    /** Returns the bucket error code. */
    DeploymentStatus?: string;
    /** Returns the detailed error message. */
    DeploymentStatusMessage?: string;
    /** The timestamp of when the deployment was started on the agent. */
    DeploymentStartTime?: string;
    /** The timestamp of when the deployment was ended, and the agent got the deployment results. */
    DeploymentEndTime?: string;
    /** Returns a list of models deployed on the agent. */
    DeploymentModels?: any[];
}
export interface GetDeploymentsInput {
    /** The name of the fleet that the device belongs to. */
    DeviceFleetName: string;
    /** The unique name of the device you want to get the configuration of active deployments from. */
    DeviceName: string;
}
export interface GetDeviceRegistrationInput {
    /** The name of the fleet that the device belongs to. */
    DeviceFleetName: string;
    /** The unique name of the device you want to get the registration status from. */
    DeviceName: string;
}
export interface SendHeartbeatInput {
    /** Returns the version of the agent. */
    AgentVersion: string;
    /** The name of the fleet that the device belongs to. */
    DeviceFleetName: string;
    /** The unique name of the device. */
    DeviceName: string;
    /** For internal use. Returns a list of SageMaker Edge Manager agent operating metrics. */
    AgentMetrics?: EdgeMetric[];
    /** Returns the result of a deployment on the device. */
    DeploymentResult?: DeploymentResult;
    /** Returns a list of models deployed on the the device. */
    Models?: Model[];
}
/** Sagemaker Edge service binding for Step Functions SDK integrations. */
export declare class SagemakerEdge {
    constructor();
    getDeployments<T>(params: GetDeploymentsInput): Promise<T>;
    getDeviceRegistration<T>(params: GetDeviceRegistrationInput): Promise<T>;
    sendHeartbeat<T>(params: SendHeartbeatInput): Promise<T>;
}
//# sourceMappingURL=SagemakerEdge.d.ts.map