import * as Ot from "@ot-builder/ot";
import type { Data } from "@ot-builder/prelude";
import { type FeatureConsolidationSource } from "./consolidate/feature";
export declare class GsubGposMerger<L extends Ot.GsubGpos.LookupProp> implements FeatureConsolidationSource<L> {
    readonly variationDimensions: Data.Order<Ot.Var.Dim>;
    readonly preferred: Ot.GsubGpos.TableT<L>;
    readonly less: Ot.GsubGpos.TableT<L>;
    private readonly preferredGdef;
    private readonly lessGdef;
    constructor(variationDimensions: Data.Order<Ot.Var.Dim>, preferred: Ot.GsubGpos.TableT<L>, less: Ot.GsubGpos.TableT<L>, preferredGdef: Data.Maybe<Ot.Gdef.Table>, lessGdef: Data.Maybe<Ot.Gdef.Table>);
    resolve(): Ot.GsubGpos.TableT<L>;
    private getLookups;
    private amendIgnoreSet;
    private mergeScriptList;
    private mergeScript;
    private mergeLanguage;
    private featureMergingPlans;
    private mergeRequiredFeature;
    private combineFeatureList;
    private pushMergingPlans;
    private fordPreferred;
    private fordLess;
    featureVariationCollection: Map<string, Ot.GsubGpos.FeatureVariationT<L>>;
    getFeatureHash(feature: Ot.GsubGpos.FeatureT<L>): string;
    getFeatureVariations(): Generator<Ot.GsubGpos.GeneralGsubGpos.FeatureVariationT<Ot.Var.Dim, Ot.Glyph, Ot.Var.Value, L>, void, unknown>;
}
//# sourceMappingURL=gsub-gpos-merger.d.ts.map