export type ExternalStoreSubscribe = (listener: () => void) => () => void; export type ExternalStoreSelectorOptions = { /** * Equality function to keep returning the previous snapshot when semantically unchanged. * This prevents unnecessary re-renders when the selector creates new objects. */ areEqual?: (a: T, b: T) => boolean; }; /** * Select a derived value from an external store, optionally reusing the previous snapshot * when `areEqual(previous, next)` holds. */ export declare function useExternalStoreSelector(subscribe: ExternalStoreSubscribe, getState: () => S, selector: (state: S) => T, options?: ExternalStoreSelectorOptions): T;