1 | import { Observable } from 'rxjs';
|
2 |
|
3 |
|
4 |
|
5 | export interface EffectConfig {
|
6 | |
7 |
|
8 |
|
9 |
|
10 | dispatch?: boolean;
|
11 | |
12 |
|
13 |
|
14 |
|
15 | functional?: boolean;
|
16 | |
17 |
|
18 |
|
19 | useEffectsErrorHandler?: boolean;
|
20 | }
|
21 | export declare const DEFAULT_EFFECT_CONFIG: Readonly<Required<EffectConfig>>;
|
22 | export declare const CREATE_EFFECT_METADATA_KEY = "__@ngrx/effects_create__";
|
23 | export interface CreateEffectMetadata {
|
24 | [CREATE_EFFECT_METADATA_KEY]: EffectConfig;
|
25 | }
|
26 | export interface FunctionalCreateEffectMetadata extends CreateEffectMetadata {
|
27 | [CREATE_EFFECT_METADATA_KEY]: EffectConfig & {
|
28 | functional: true;
|
29 | };
|
30 | }
|
31 | export type FunctionalEffect<Source extends () => Observable<unknown> = () => Observable<unknown>> = Source & FunctionalCreateEffectMetadata;
|
32 | export type EffectPropertyKey<T extends Record<keyof T, Object>> = Exclude<keyof T, keyof Object>;
|
33 | export interface EffectMetadata<T extends Record<keyof T, Object>> extends Required<EffectConfig> {
|
34 | propertyName: EffectPropertyKey<T>;
|
35 | }
|
36 | export type EffectsMetadata<T extends Record<keyof T, Object>> = {
|
37 | [Key in EffectPropertyKey<T>]?: EffectConfig;
|
38 | };
|