import type { IApplicationRef, IDeploymentConfigRef } from '../../../interfaces/generated/aws-codedeploy-interfaces.generated';
import type { IBaseDeploymentConfig } from '../base-deployment-config';
import type { IEcsApplication } from '../ecs/application';
import type { IEcsDeploymentConfig } from '../ecs/deployment-config';
import type { ILambdaApplication } from '../lambda/application';
import type { IServerApplication } from '../server/application';
import type { IServerDeploymentConfig } from '../server/deployment-config';
/**
 * Convert an IApplicationRef to IServerApplication, validating it has the required properties
 */
export declare function toIServerApplication(app: IApplicationRef): IServerApplication;
/**
 * Convert an IApplicationRef to IEcsApplication, validating it has the required properties
 */
export declare function toIEcsApplication(app: IApplicationRef): IEcsApplication;
/**
 * Convert an IApplicationRef to ILambdaApplication, validating it has the required properties
 */
export declare function toILambdaApplication(app: IApplicationRef): ILambdaApplication;
/**
 * Convert an IDeploymentConfigRef to IServerDeploymentConfig, validating it has the required properties
 */
export declare function toIServerDeploymentConfig(config: IDeploymentConfigRef): IServerDeploymentConfig;
/**
 * Convert an IDeploymentConfigRef to IEcsDeploymentConfig, validating it has the required properties
 */
export declare function toIEcsDeploymentConfig(config: IDeploymentConfigRef): IEcsDeploymentConfig;
/**
 * Convert an IDeploymentConfigRef to ILambdaDeploymentConfig, validating it has the required properties
 */
export declare function toIBaseDeploymentConfig(config: IDeploymentConfigRef): IBaseDeploymentConfig;
