import { R3gRequestMethod, R3gRequestResult } from '../../request/types'; /*********************************/ /********* Primitives **********/ /*********************************/ export declare type R3gSetFieldActionKeySuffix = 'SET_FIELD'; export declare type R3gQueueRequestActionKeySuffix = 'QUEUE_REQUEST'; export declare type R3gCancelRequestActionKeySuffix = 'CANCEL_REQUEST'; export declare type R3gFetchActionKeySuffix = 'FETCH'; export declare type R3gResponseActionKeySuffix = 'RESPONSE'; export declare type R3gResolveActionKeySuffix = 'RESOLVE'; export declare type R3gInvalidateActionKeySuffix = 'INVALIDATE'; export declare type R3gClearFieldsActionKeySuffix = 'CLEAR_FIELDS'; export declare type R3gClearResponseActionKeySuffix = 'CLEAR_RESPONSE'; export declare type R3gActionKeySuffix = R3gSetFieldActionKeySuffix | R3gQueueRequestActionKeySuffix | R3gCancelRequestActionKeySuffix | R3gFetchActionKeySuffix | R3gResponseActionKeySuffix | R3gResolveActionKeySuffix | R3gInvalidateActionKeySuffix | R3gClearFieldsActionKeySuffix | R3gClearResponseActionKeySuffix; export declare type R3gActionKey = `R3G_${R3gActionKeySuffix}_${string}`; export declare type R3gSetFieldActionKey = `R3G_SET_FIELD_${string}`; export declare type R3gQueueRequestActionKey = `R3G_QUEUE_REQUEST_${string}`; export declare type R3gCancelRequestActionKey = `R3G_CANCEL_REQUEST_${string}`; export declare type R3gFetchActionKey = `R3G_FETCH_${string}`; export declare type R3gResponseActionKey = `R3G_RESPONSE_${string}`; export declare type R3gResolveActionKey = `R3G_RESOLVE_${string}`; export declare type R3gInvalidateActionKey = `R3G_INVALIDATE_${string}`; export declare type R3gClearFieldsActionKey = `R3G_CLEAR_FIELDS_${string}`; export declare type R3gClearResponseActionKey = `R3G_CLEAR_RESPONSE_${string}`; export declare type R3gSetFieldActionKeyRecordKey = 'setField'; export declare type R3gQueueRequestActionKeyRecordKey = 'queueRequest'; export declare type R3gCancelRequestActionKeyRecordKey = 'cancelRequest'; export declare type R3gFetchActionKeyRecordKey = 'fetch'; export declare type R3gResponseActionKeyRecordKey = 'response'; export declare type R3gResolveActionKeyRecordKey = 'resolve'; export declare type R3gInvalidateActionKeyRecordKey = 'invalidate'; export declare type R3gClearFieldsActionKeyRecordKey = 'clearFields'; export declare type R3gClearResponseActionKeyRecordKey = 'clearResponse'; export declare type R3gActionKeyRecordKey = R3gSetFieldActionKeyRecordKey | R3gQueueRequestActionKeyRecordKey | R3gCancelRequestActionKeyRecordKey | R3gFetchActionKeyRecordKey | R3gResponseActionKeyRecordKey | R3gResolveActionKeyRecordKey | R3gInvalidateActionKeyRecordKey | R3gClearFieldsActionKeyRecordKey | R3gClearResponseActionKeyRecordKey; /*********************************/ /******* Data Structures *******/ /*********************************/ export declare type R3gActionKeyRecordKeyList = Array; export declare type R3gActionKeyRecord = { setField: R3gSetFieldActionKey; queueRequest: R3gQueueRequestActionKey; cancelRequest: R3gCancelRequestActionKey; fetch: R3gFetchActionKey; response: R3gResponseActionKey; resolve: R3gResolveActionKey; invalidate: R3gInvalidateActionKey; clearFields: R3gClearFieldsActionKey; clearResponse: R3gClearResponseActionKey; }; /*********************************/ /******** Redux Actions ********/ /*********************************/ export declare type R3gSetFieldActionPayload = { name: keyof ResourceBody; value: unknown; }; export declare type R3gSetFieldAction = { type: R3gSetFieldActionKey; payload: R3gSetFieldActionPayload; }; export declare type R3gQueueRequestActionPayload = { requestKey: string; hookKey: string; method: R3gRequestMethod; url: string; body: string | null; }; export declare type R3gQueueRequestAction = { type: R3gQueueRequestActionKey; payload: R3gQueueRequestActionPayload; }; export declare type R3gCancelRequestActionPayload = { requestKey: string; }; export declare type R3gCancelRequestAction = { type: R3gCancelRequestActionKey; payload: R3gCancelRequestActionPayload; }; export declare type R3gFetchActionPayload = { requestKey: string; }; export declare type R3gFetchAction = { type: R3gFetchActionKey; payload: R3gFetchActionPayload; }; export declare type R3gResolveActionPayload = { requestKey: string; }; export declare type R3gResolveAction = { type: R3gResolveActionKey; payload: R3gResolveActionPayload; }; export declare type R3gResponseActionPayload = { requestResult: R3gRequestResult; }; export declare type R3gResponseAction = { type: R3gResponseActionKey; payload: R3gResponseActionPayload; }; export declare type R3gInvalidateActionPayload = Record; export declare type R3gInvalidateAction = { type: R3gInvalidateActionKey; payload: R3gInvalidateActionPayload; }; export declare type R3gClearFieldsActionPayload = Record; export declare type R3gClearFieldsAction = { type: R3gClearFieldsActionKey; payload: R3gClearFieldsActionPayload; }; export declare type R3gClearResponseActionPayload = Record; export declare type R3gClearResponseAction = { type: R3gClearResponseActionKey; payload: R3gClearResponseActionPayload; }; export declare type R3gAction = R3gSetFieldAction | R3gQueueRequestAction | R3gCancelRequestAction | R3gFetchAction | R3gResolveAction | R3gResponseAction | R3gInvalidateAction | R3gClearFieldsAction | R3gClearResponseAction; /*********************************/ /********* Functions ***********/ /*********************************/ export declare type GetGenericR3gActionKeyRecordFunctionParams = { resourceName: string; }; export declare type GetGenericR3gActionKeyRecord = (params: GetGenericR3gActionKeyRecordFunctionParams) => R3gActionKeyRecord;