@mini-rx/signal-store
Version:
Signal Store for Angular
22 lines (21 loc) • 3.2 kB
TypeScript
import { Signal } from '@angular/core';
export declare const SIGNAL_SELECTOR_KEY = "@mini-rx/signalSelector";
export interface HasSignalSelectorKey {
[SIGNAL_SELECTOR_KEY]: true;
}
type Selector<T, R> = (state: Signal<T>) => Signal<R>;
export type SignalSelector<T, R> = Selector<T, R> & HasSignalSelectorKey;
export declare function createSelector<State, S1, Result>(s1: SignalSelector<State, S1>, projector: (s1: S1) => Result): SignalSelector<State, Result>;
export declare function createSelector<State, S1, S2, Result>(s1: SignalSelector<State, S1>, s2: SignalSelector<State, S2>, projector: (s1: S1, s2: S2) => Result): SignalSelector<State, Result>;
export declare function createSelector<State, S1, S2, S3, Result>(s1: SignalSelector<State, S1>, s2: SignalSelector<State, S2>, s3: SignalSelector<State, S3>, projector: (s1: S1, s2: S2, s3: S3) => Result): SignalSelector<State, Result>;
export declare function createSelector<State, S1, S2, S3, S4, Result>(s1: SignalSelector<State, S1>, s2: SignalSelector<State, S2>, s3: SignalSelector<State, S3>, s4: SignalSelector<State, S4>, projector: (s1: S1, s2: S2, s3: S3, s4: S4) => Result): SignalSelector<State, Result>;
export declare function createSelector<State, S1, S2, S3, S4, S5, Result>(s1: SignalSelector<State, S1>, s2: SignalSelector<State, S2>, s3: SignalSelector<State, S3>, s4: SignalSelector<State, S4>, s5: SignalSelector<State, S5>, projector: (s1: S1, s2: S2, s3: S3, s4: S4, s5: S5) => Result): SignalSelector<State, Result>;
export declare function createSelector<State, S1, S2, S3, S4, S5, S6, Result>(s1: SignalSelector<State, S1>, s2: SignalSelector<State, S2>, s3: SignalSelector<State, S3>, s4: SignalSelector<State, S4>, s5: SignalSelector<State, S5>, s6: SignalSelector<State, S6>, projector: (s1: S1, s2: S2, s3: S3, s4: S4, s5: S5, s6: S6) => Result): SignalSelector<State, Result>;
export declare function createSelector<State, S1, S2, S3, S4, S5, S6, S7, Result>(s1: SignalSelector<State, S1>, s2: SignalSelector<State, S2>, s3: SignalSelector<State, S3>, s4: SignalSelector<State, S4>, s5: SignalSelector<State, S5>, s6: SignalSelector<State, S6>, s7: SignalSelector<State, S7>, projector: (s1: S1, s2: S2, s3: S3, s4: S4, s5: S5, s6: S6, s7: S7) => Result): SignalSelector<State, Result>;
export declare function createSelector<State, S1, S2, S3, S4, S5, S6, S7, S8, Result>(s1: SignalSelector<State, S1>, s2: SignalSelector<State, S2>, s3: SignalSelector<State, S3>, s4: SignalSelector<State, S4>, s5: SignalSelector<State, S5>, s6: SignalSelector<State, S6>, s7: SignalSelector<State, S7>, s8: SignalSelector<State, S8>, projector: (s1: S1, s2: S2, s3: S3, s4: S4, s5: S5, s6: S6, s7: S7, s8: S8) => Result): SignalSelector<State, Result>;
export declare function createFeatureStateSelector<T>(featureKey?: string): SignalSelector<object, T>;
export declare function createFeatureStateSelector<T, V>(featureKey: keyof T): SignalSelector<T, V>;
export declare function createComponentStateSelector<T>(): SignalSelector<T, T>;
export declare function addSignalSelectorKey<T, R>(s: Selector<T, R>): SignalSelector<T, R>;
export declare function isSignalSelector(v: any): v is SignalSelector<any, any>;
export {};