import { Construct } from 'constructs';
import { CommonTaskDefinitionAttributes, CommonTaskDefinitionProps, InferenceAccelerator, ITaskDefinition, TaskDefinition, Volume } from '../base/task-definition';
/**
 * (experimental) The properties for a task definition run on an External cluster.
 *
 * @experimental
 */
export interface ExternalTaskDefinitionProps extends CommonTaskDefinitionProps {
}
/**
 * (experimental) The interface of a task definition run on an External cluster.
 *
 * @experimental
 */
export interface IExternalTaskDefinition extends ITaskDefinition {
}
/**
 * (experimental) Attributes used to import an existing External task definition.
 *
 * @experimental
 */
export interface ExternalTaskDefinitionAttributes extends CommonTaskDefinitionAttributes {
}
/**
 * (experimental) The details of a task definition run on an External cluster.
 *
 * @experimental
 * @resource AWS::ECS::TaskDefinition
 */
export declare class ExternalTaskDefinition extends TaskDefinition implements IExternalTaskDefinition {
    /**
     * (experimental) Imports a task definition from the specified task definition ARN.
     *
     * @experimental
     */
    static fromEc2TaskDefinitionArn(scope: Construct, id: string, externalTaskDefinitionArn: string): IExternalTaskDefinition;
    /**
     * (experimental) Imports an existing External task definition from its attributes.
     *
     * @experimental
     */
    static fromExternalTaskDefinitionAttributes(scope: Construct, id: string, attrs: ExternalTaskDefinitionAttributes): IExternalTaskDefinition;
    /**
     * (experimental) Constructs a new instance of the ExternalTaskDefinition class.
     *
     * @experimental
     */
    constructor(scope: Construct, id: string, props?: ExternalTaskDefinitionProps);
    /**
     * (experimental) Overridden method to throw error, as volumes are not supported for external task definitions.
     *
     * @experimental
     */
    addVolume(_volume: Volume): void;
    /**
     * (experimental) Overriden method to throw error as interface accelerators are not supported for external tasks.
     *
     * @experimental
     */
    addInferenceAccelerator(_inferenceAccelerator: InferenceAccelerator): void;
}
