import { type Insets } from "react-native"; export type Slop = Insets | number | null | undefined; export type Sides = Required>; /** A slop as its four sides, a bare number applying to each. */ export declare function slopSides(slop: Slop): Sides; /** * Split the `gap` between two neighbors' facing sides `a` and `b`: each keeps what it asks * for up to half the gap, and may take the rest when the other asks for less. The results * never add up to more than the gap, and neither grows. */ export declare function splitSeam(a: number, b: number, gap: number): [number, number]; /** The physical side a row's start or end is on: a row runs right to left under RTL. */ export declare function inlineSide(side: "start" | "end"): "left" | "right"; /** * The slops of two controls that sit `gap` apart in a row, `first` before `second` in the * layout direction, with the seam between them split: the first's end side and the second's * start side. Every other side is left as it is. A missing slop asks for nothing, and so * leaves its neighbor the whole gap. */ export declare function rowSeam(first: Slop, second: Slop, gap: number): [Insets | undefined, Insets | undefined]; /** * The slops of two controls stacked `gap` apart, `upper` above `lower`, with the seam split * between the upper one's bottom and the lower one's top. */ export declare function columnSeam(upper: Slop, lower: Slop, gap: number): [Insets | undefined, Insets | undefined]; /** The most a kit control's slop may reach on each side, in logical sides; a side left out is not held. */ export interface SeamLimit { top?: number; bottom?: number; start?: number; end?: number; } /** * Hands a kit control its share of a seam: a kit component wraps each of two of its own parts * that it renders as components (the Board's drag handle and row menu) in one of these, with * the split of the gap between them. Only a part's own pressable reads it (useSeamLimit). */ export declare const SeamLimitProvider: import("react").Provider; /** * A control's slop held to the seam its kit parent handed it (SeamLimitProvider), or the slop * as it is where no parent did. */ export declare function useSeamLimit(slop: Slop): Slop; //# sourceMappingURL=touch-seam.d.ts.map