/**
 * Returns a class implementing all the properties of the provided type
 */
declare const autoImplement: <T>() => new () => T;
/**
 * Decorator to make a class implement an interface with static methods instead of instances
 */
declare const staticImplements: <T>() => <U extends T>(constructor: U) => void;

export { autoImplement, staticImplements };
