import { Constructor, AnyFunction } from './function'; export declare class Base { initialize(props?: Partial): void; static new(this: T, props?: Partial>): InstanceType; } export declare type BaseAnyConstructor = typeof Base; declare type AnyConstructor = Constructor; export declare type Mixin> = InstanceType>; export declare type MixinAnyConstructor = T extends AnyFunction ? (M extends AnyConstructor ? M & BaseAnyConstructor : M) : ReturnType; export declare type FilterFlags = { [Key in keyof Base]: Base[Key] extends Condition ? Key : never; }; export declare type AllowedNames = FilterFlags[keyof Base]; export declare type OnlyPropertiesOfType = Pick>; export {};