import type { IOptionLoader } from "../Options/Interfaces/IOptionLoader.js";
import type { RecursivePartial } from "../Types/RecursivePartial.js";
export declare abstract class OptionLoader<T> implements IOptionLoader<T> {
    load(data?: RecursivePartial<T>): void;
    protected abstract doLoad(data: RecursivePartial<T>): void;
}
export declare function loadOptions<T>(options: IOptionLoader<T>, ...sourceOptionsArr: RecursivePartial<T | undefined>[]): void;
