import { AbstractControl } from "@angular/forms";
import { Observable } from "rxjs";
/**
 * Extract arguments of function
 */
export declare type ArgumentsType<F> = F extends (...args: infer A) => any ? A : never;
/**
 * Creates an object like O. Optionally provide minimum set of properties P which the objects must share to conform
 */
declare type ObjectLike<O extends object, P extends keyof O = keyof O> = Pick<O, P>;
export declare const extractTouchedChanges: (control: ObjectLike<AbstractControl, "markAsTouched" | "markAsUntouched">) => Observable<boolean>;
export {};
