import { TypeBuilder } from './TypeBuilder'; import { Writer } from './Writer'; export declare class ConditionalType extends TypeBuilder { #private; needsParenthesisInUnion: boolean; needsParenthesisInIntersection: boolean; constructor(checkType: TypeBuilder, extendsType: TypeBuilder, trueType: TypeBuilder, falseType: TypeBuilder); write(writer: Writer): void; } declare class ConditionalTypeBuilder { check(checkType: TypeBuilder): ConditionalTypeBuilderWithCheckType; } declare class ConditionalTypeBuilderWithCheckType { #private; constructor(checkType: TypeBuilder); extends(extendsType: TypeBuilder): ConditionalTypeBuilderWithExtendsType; } declare class ConditionalTypeBuilderWithExtendsType { #private; constructor(checkType: TypeBuilder, extendsType: TypeBuilder); then(trueType: TypeBuilder): ConditionalTypeBuilderWithTrueType; } declare class ConditionalTypeBuilderWithTrueType { #private; constructor(checkType: TypeBuilder, extendsType: TypeBuilder, trueType: TypeBuilder); else(falseType: TypeBuilder): ConditionalType; } export declare function conditionalType(): ConditionalTypeBuilder; export {};