import { ReactStore } from '../../store/ReactStore'; export type State = { /** * Every open drawer, by identity. A Set rather than a count so a drawer that * registers twice, or unmounts while open, cannot leave the tally wrong. */ openDrawers: ReadonlySet; /** * How far the frontmost drawer has been swiped towards dismissal, `0` to `1`. */ swipeProgress: number; /** * The measured height of the frontmost drawer's popup. */ frontmostHeight: number; }; declare const selectors: { active: (state: State) => boolean; swipeProgress: (state: State) => number; frontmostHeight: (state: State) => number; }; /** * Tracks whether any drawer under a `Drawer.Provider` is open, and how far the * frontmost one has been swiped. * * A store rather than React state so the per-frame `swipeProgress` never forces * a React render: `Drawer.Indent`/`IndentBackground` read it as a snapshot (they * re-render only for the discrete `active` flip), and a consumer who wants the * scale to follow the finger subscribes non-reactively and mirrors it into their * own animation library's shared value. */ export declare class DrawerProviderStore extends ReactStore, {}, typeof selectors> { constructor(initialState?: Partial); setDrawerOpen: (drawer: object, open: boolean) => void; setVisualState: (swipeProgress: number, frontmostHeight: number) => void; } export {}; //# sourceMappingURL=DrawerProviderStore.d.ts.map