export interface WithName { withName(name: string): T; } export interface Named { name: string; } export declare function withName(t: T, callback?: (t: T) => void): T & WithName;