1 | import { MakeRequest, MRActions, MRReturn } from '../../common-types';
|
2 | export declare type DefaultParams = {
|
3 | spaceId?: string;
|
4 | environmentId?: string;
|
5 | organizationId?: string;
|
6 | };
|
7 |
|
8 |
|
9 |
|
10 | export declare type OptionalDefaults<T> = Omit<T, keyof DefaultParams> & ('organizationId' extends keyof T ? {
|
11 | organizationId?: string;
|
12 | } : Record<string, unknown>) & ('spaceId' extends keyof T ? {
|
13 | spaceId?: string;
|
14 | } : Record<string, unknown>) & ('environmentId' extends keyof T ? {
|
15 | environmentId?: string;
|
16 | } : Record<string, unknown>);
|
17 |
|
18 |
|
19 |
|
20 | export declare type WrapParams = {
|
21 | makeRequest: MakeRequest;
|
22 | defaults?: DefaultParams;
|
23 | };
|
24 |
|
25 |
|
26 |
|
27 | export declare type WrapFn<ET extends keyof MRActions, Action extends keyof MRActions[ET], Params = 'params' extends keyof MRActions[ET][Action] ? MRActions[ET][Action]['params'] : undefined, Payload = 'payload' extends keyof MRActions[ET][Action] ? MRActions[ET][Action]['payload'] : undefined, Headers = 'headers' extends keyof MRActions[ET][Action] ? MRActions[ET][Action]['headers'] : undefined, Return = MRReturn<ET, Action>> = Params extends undefined ? () => Return : Payload extends undefined ? (params: Params) => Return : Headers extends undefined ? (params: Params, payload: Payload) => Return : (params: Params, payload: Payload, headers: Headers) => Return;
|
28 |
|
29 |
|
30 |
|
31 | export declare const wrap: <ET extends keyof MRActions, Action extends keyof MRActions[ET]>({ makeRequest, defaults }: WrapParams, entityType: ET, action: Action) => WrapFn<ET, Action, "params" extends keyof MRActions[ET][Action] ? MRActions[ET][Action][keyof MRActions[ET][Action] & "params"] : undefined, "payload" extends keyof MRActions[ET][Action] ? MRActions[ET][Action][keyof MRActions[ET][Action] & "payload"] : undefined, "headers" extends keyof MRActions[ET][Action] ? MRActions[ET][Action][keyof MRActions[ET][Action] & "headers"] : undefined, MRReturn<ET, Action>>;
|