export declare function copyProperties(target: InstanceType<TypeClass>, source: TypeClass): void;
export declare function Mixin<T, C extends TypeClass[]>(...mixins: C): C[number] & T;
export type TypeClass<InstanceType = object, StaticType = object> = (abstract new (...args: any[]) => InstanceType) & StaticType;
export declare const mix: (...ingredients: TypeClass[]) => (decoratedClass: any) => any;
