import type { CanonicalPublicAttrs, CanonicalPublicAttrValue } from "./types.js"; /** Return whether one canonical attribute is in same-name flag form. */ export declare function canonical_attr_is_flag(attrs: CanonicalPublicAttrs, name: string): boolean; /** Plan one complete canonical bag after setting one attribute. */ export declare function plan_public_attr_set(current: CanonicalPublicAttrs, name: string, value: CanonicalPublicAttrValue): CanonicalPublicAttrs; /** Plan one complete canonical bag after an attribute PATCH/overlay. */ export declare function plan_public_attrs_set_many(current: CanonicalPublicAttrs, values: CanonicalPublicAttrs): CanonicalPublicAttrs; /** Plan one complete canonical bag after removing one attribute. */ export declare function plan_public_attr_drop(current: CanonicalPublicAttrs, name: string): CanonicalPublicAttrs; /** Plan one complete canonical bag after removing several attributes. */ export declare function plan_public_attrs_drop_many(current: CanonicalPublicAttrs, names: readonly string[]): CanonicalPublicAttrs; /** Plan an exact complete-bag replacement. */ export declare function plan_public_attrs_replace(values: CanonicalPublicAttrs): CanonicalPublicAttrs; /** Plan a complete empty attribute bag. */ export declare function plan_public_attrs_clear(): CanonicalPublicAttrs; /** Plan one atomic semantic flag-set transition. */ export declare function plan_public_flags_set(current: CanonicalPublicAttrs, names: readonly string[]): CanonicalPublicAttrs; /** Plan one atomic semantic flag-clear transition. */ export declare function plan_public_flags_clear(current: CanonicalPublicAttrs, names: readonly string[]): CanonicalPublicAttrs; //# sourceMappingURL=public-attr-transitions.d.ts.map