import { CallNode, ClassNode, ParseNode } from '../parser/parseNodes'; import { Arg, TypeEvaluator } from './typeEvaluatorTypes'; import { ClassType, DataClassBehaviors, DataClassEntry, Type } from './types'; export declare function synthesizeDataClassMethods(evaluator: TypeEvaluator, node: ClassNode, classType: ClassType, isNamedTuple: boolean, skipSynthesizeInit: boolean, hasExistingInitMethod: boolean, skipSynthesizeHash: boolean): void; export declare function addInheritedDataClassEntries(classType: ClassType, entries: DataClassEntry[]): boolean; export declare function validateDataClassTransformDecorator(evaluator: TypeEvaluator, node: CallNode): DataClassBehaviors | undefined; export declare function getDataclassDecoratorBehaviors(type: Type): DataClassBehaviors | undefined; export declare function applyDataClassClassBehaviorOverrides(evaluator: TypeEvaluator, errorNode: ParseNode, classType: ClassType, args: Arg[], defaultBehaviors: DataClassBehaviors): void; export declare function applyDataClassDecorator(evaluator: TypeEvaluator, errorNode: ParseNode, classType: ClassType, defaultBehaviors: DataClassBehaviors, callNode: CallNode | undefined): void;