import { Construct } from './construct'; import { Diagnostic, Diagnostics, ErrorDiagnostic, WarningDiagnostic } from './diagnostics'; export declare class InvalidPropertyValueDiagnostic extends ErrorDiagnostic { property: string; constructor(property: string, error: Error); } export declare class RequiredPropertyDiagnostic extends ErrorDiagnostic { property: string; constructor(property: string, error: Error); } export declare class ConflictingPropertyDiagnostic extends ErrorDiagnostic { property1: string; property2: string; constructor(property1: string, property2: string, error: Error); } export declare class DeprecatedPropertyDiagnostic extends WarningDiagnostic { property: string; constructor(property: string, error: Error); } export declare class RemovedPropertyDiagnostic extends ErrorDiagnostic { property: string; constructor(property: string, error: Error); } export declare class UnsupportedPropertyDiagnostic extends ErrorDiagnostic { property: string; constructor(property: string, error: Error); } export declare class DeprecatedConstructDiagnostic extends WarningDiagnostic { construct: string; constructor(construct: string, error: Error); } export declare class UnsupportedRuntimeFeatureDiagnostic extends ErrorDiagnostic { runtimeId: string; constructor(runtimeId: string, error: Error); } export declare class UnsatisfiedLocalPrerequisitesDiagnostic extends ErrorDiagnostic { constructor(error: Error); } export declare class ConstructDiagnostic extends Diagnostic { underlying: Diagnostic; constructor(construct: Construct, underlying: Diagnostic); isFatal(): boolean; isBenign(): boolean; } export declare class ConstructDiagnostics extends Diagnostics { construct: Construct; constructor(construct: Construct); add(diagnostic: Diagnostic): void; }