mirror of
https://github.com/zoriya/v10.git
synced 2026-08-16 02:45:09 +00:00
22 lines
781 B
TypeScript
22 lines
781 B
TypeScript
import { AnySlice, InferSliceState } from "./slice.js";
|
|
import { Selector } from "./shallow-equal.js";
|
|
//#region src/core/selector.d.ts
|
|
/**
|
|
* Create a type-safe selector for a slice's state.
|
|
*
|
|
* The selector returns the slice's state, or `undefined` if the slice
|
|
* is not configured in the store.
|
|
*
|
|
* @example
|
|
* ```ts
|
|
* const selectPlayback = createSelector(playbackSlice);
|
|
* selectPlayback(store.state); // { paused, play, pause, ... } | undefined
|
|
* selectPlayback.displayName; // 'playback' (from slice name)
|
|
* ```
|
|
*
|
|
* @param slice - The slice to create a selector for.
|
|
*/
|
|
declare function createSelector<S extends AnySlice>(slice: S): Selector<object, InferSliceState<S> | undefined>;
|
|
//#endregion
|
|
export { createSelector };
|
|
//# sourceMappingURL=selector.d.ts.map
|