stream-chat 9.50.3 → 10.0.0-rc.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/index.browser.js +19798 -14472
- package/dist/cjs/index.browser.js.map +4 -4
- package/dist/cjs/index.node.js +19817 -14482
- package/dist/cjs/index.node.js.map +4 -4
- package/dist/esm/index.mjs +19795 -14469
- package/dist/esm/index.mjs.map +4 -4
- package/dist/types/ChannelManager.d.ts +221 -0
- package/dist/types/EventHandlerPipeline.d.ts +104 -0
- package/dist/types/api-client.d.ts +26 -0
- package/dist/types/campaign.d.ts +0 -44
- package/dist/types/channel.d.ts +454 -479
- package/dist/types/channel_batch_updater.d.ts +0 -93
- package/dist/types/channel_state.d.ts +53 -201
- package/dist/types/client.d.ts +451 -1920
- package/dist/types/client_state.d.ts +4 -4
- package/dist/types/configuration/InstanceConfigurationService.d.ts +26 -0
- package/dist/types/configuration/index.d.ts +1 -0
- package/dist/types/configuration/types.d.ts +53 -0
- package/dist/types/connection.d.ts +49 -41
- package/dist/types/connection_fallback.d.ts +6 -4
- package/dist/types/constants.d.ts +0 -4
- package/dist/types/custom_types.d.ts +2 -0
- package/dist/types/entityStore/EntityStore.d.ts +111 -0
- package/dist/types/entityStore/StoreBackedItemIndex.d.ts +60 -0
- package/dist/types/entityStore/applyReactionLocally.d.ts +26 -0
- package/dist/types/entityStore/index.d.ts +2 -0
- package/dist/types/errors.d.ts +10 -2
- package/dist/types/gen/chat/ChannelApi.d.ts +45 -0
- package/dist/types/gen/chat/ChatApi.d.ts +334 -0
- package/dist/types/gen/model-decoders/decoders.d.ts +3 -0
- package/dist/types/gen/model-decoders/event-decoder-mapping.d.ts +6 -0
- package/dist/types/gen/models/index.d.ts +8836 -0
- package/dist/types/gen/moderation/ModerationApi.d.ts +50 -0
- package/dist/types/gen-imports.d.ts +3 -0
- package/dist/types/index.d.ts +8 -7
- package/dist/types/insights.d.ts +9 -8
- package/dist/types/logger.d.ts +9 -0
- package/dist/types/messageComposer/LocationComposer.d.ts +7 -4
- package/dist/types/messageComposer/attachmentIdentity.d.ts +2 -2
- package/dist/types/messageComposer/attachmentManager.d.ts +8 -4
- package/dist/types/messageComposer/configuration/types.d.ts +11 -11
- package/dist/types/messageComposer/linkPreviewsManager.d.ts +25 -13
- package/dist/types/messageComposer/messageComposer.d.ts +10 -10
- package/dist/types/messageComposer/middleware/messageComposer/types.d.ts +3 -3
- package/dist/types/messageComposer/middleware/pollComposer/types.d.ts +4 -7
- package/dist/types/messageComposer/middleware/textComposer/commandUtils.d.ts +3 -3
- package/dist/types/messageComposer/middleware/textComposer/commands.d.ts +7 -7
- package/dist/types/messageComposer/middleware/textComposer/mentions.d.ts +218 -4
- package/dist/types/messageComposer/middleware/textComposer/types.d.ts +9 -4
- package/dist/types/messageComposer/pollComposer.d.ts +5 -4
- package/dist/types/messageComposer/textComposer.d.ts +8 -3
- package/dist/types/messageComposer/types.d.ts +6 -28
- package/dist/types/messageDelivery/MessageDeliveryReporter.d.ts +40 -25
- package/dist/types/messageDelivery/MessageReceiptsTracker.d.ts +53 -12
- package/dist/types/messageOperations/MessageOperationStatePolicy.d.ts +19 -0
- package/dist/types/messageOperations/MessageOperations.d.ts +17 -0
- package/dist/types/messageOperations/index.d.ts +3 -0
- package/dist/types/messageOperations/types.d.ts +49 -0
- package/dist/types/moderation.d.ts +21 -203
- package/dist/types/notifications/types.d.ts +8 -7
- package/dist/types/offline-support/offline_support_api.d.ts +111 -87
- package/dist/types/offline-support/offline_sync_manager.d.ts +0 -7
- package/dist/types/offline-support/types.d.ts +19 -23
- package/dist/types/offline-support/util.d.ts +4 -2
- package/dist/types/pagination/FilterBuilder.d.ts +1 -1
- package/dist/types/pagination/ItemIndex.d.ts +25 -0
- package/dist/types/pagination/cursorDerivation/createdAtAroundPaginationFlags.d.ts +9 -0
- package/dist/types/pagination/cursorDerivation/idAroundPaginationFlags.d.ts +6 -0
- package/dist/types/pagination/cursorDerivation/index.d.ts +1 -0
- package/dist/types/pagination/cursorDerivation/linearPaginationFlags.d.ts +6 -0
- package/dist/types/pagination/filterCompiler.d.ts +7 -0
- package/dist/types/pagination/index.d.ts +1 -3
- package/dist/types/pagination/paginators/BasePaginator.d.ts +848 -0
- package/dist/types/pagination/paginators/ChannelPaginator.d.ts +212 -0
- package/dist/types/pagination/paginators/MessageIntervalPaginator.d.ts +282 -0
- package/dist/types/pagination/paginators/MessagePaginator.d.ts +208 -0
- package/dist/types/pagination/paginators/PinnedMessagePaginator.d.ts +39 -0
- package/dist/types/pagination/paginators/ReminderPaginator.d.ts +19 -0
- package/dist/types/pagination/paginators/UserGroupPaginator.d.ts +24 -0
- package/dist/types/pagination/paginators/index.d.ts +7 -0
- package/dist/types/pagination/paginators/stateThrottling.d.ts +2 -0
- package/dist/types/pagination/sortCompiler.d.ts +49 -0
- package/dist/types/pagination/types.normalization.d.ts +11 -0
- package/dist/types/pagination/utility.normalization.d.ts +18 -0
- package/dist/types/pagination/utility.queryChannel.d.ts +26 -0
- package/dist/types/pagination/utility.search.d.ts +13 -0
- package/dist/types/permissions.d.ts +1 -1
- package/dist/types/poll.d.ts +29 -32
- package/dist/types/poll_manager.d.ts +2 -2
- package/dist/types/reminders/Reminder.d.ts +2 -5
- package/dist/types/reminders/ReminderManager.d.ts +2 -9
- package/dist/types/search/MessageSearchSource.d.ts +4 -4
- package/dist/types/search/UserSearchSource.d.ts +1 -1
- package/dist/types/search/types.d.ts +3 -3
- package/dist/types/segment.d.ts +0 -34
- package/dist/types/signing.d.ts +105 -65
- package/dist/types/store.d.ts +1 -0
- package/dist/types/thread.d.ts +70 -34
- package/dist/types/thread_manager.d.ts +3 -3
- package/dist/types/token_manager.d.ts +15 -10
- package/dist/types/types.d.ts +197 -3404
- package/dist/types/utils/FixedSizeQueueCache.d.ts +12 -6
- package/dist/types/utils/WithSubscriptions.d.ts +2 -1
- package/dist/types/utils/concurrency.d.ts +4 -4
- package/dist/types/utils/mergeWith/mergeWith.d.ts +3 -3
- package/dist/types/utils/mergeWith/mergeWithCore.d.ts +8 -3
- package/dist/types/utils/retryable.d.ts +34 -0
- package/dist/types/utils/throttling/throttle.d.ts +36 -0
- package/dist/types/utils.d.ts +100 -194
- package/package.json +7 -3
- package/src/ChannelManager.ts +724 -0
- package/src/CooldownTimer.ts +2 -2
- package/src/EventHandlerPipeline.ts +228 -0
- package/src/LiveLocationManager.ts +12 -11
- package/src/api-client.ts +275 -0
- package/src/campaign.ts +1 -77
- package/src/channel.ts +1344 -1282
- package/src/channel_batch_updater.ts +1 -211
- package/src/channel_state.ts +144 -1013
- package/src/client.ts +936 -3995
- package/src/client_state.ts +4 -4
- package/src/configuration/InstanceConfigurationService.ts +73 -0
- package/src/configuration/index.ts +1 -0
- package/src/configuration/types.ts +81 -0
- package/src/connection.ts +145 -94
- package/src/connection_fallback.ts +29 -27
- package/src/constants.ts +1 -5
- package/src/custom_types.ts +4 -1
- package/src/entityStore/EntityStore.ts +208 -0
- package/src/entityStore/StoreBackedItemIndex.ts +115 -0
- package/src/entityStore/applyReactionLocally.ts +113 -0
- package/src/entityStore/index.ts +2 -0
- package/src/errors.ts +14 -2
- package/src/gen/chat/ChannelApi.ts +275 -0
- package/src/gen/chat/ChatApi.ts +2554 -0
- package/src/gen/model-decoders/decoders.ts +2680 -0
- package/src/gen/model-decoders/event-decoder-mapping.ts +198 -0
- package/src/gen/models/index.ts +12673 -0
- package/src/gen/moderation/ModerationApi.ts +607 -0
- package/src/gen-imports.ts +3 -0
- package/src/index.ts +11 -12
- package/src/insights.ts +6 -5
- package/src/logger.ts +28 -0
- package/src/messageComposer/LocationComposer.ts +9 -5
- package/src/messageComposer/MessageComposerEffectHandlers.ts +1 -0
- package/src/messageComposer/attachmentIdentity.ts +16 -9
- package/src/messageComposer/attachmentManager.ts +13 -8
- package/src/messageComposer/configuration/types.ts +11 -11
- package/src/messageComposer/linkPreviewsManager.ts +9 -10
- package/src/messageComposer/messageComposer.ts +57 -53
- package/src/messageComposer/middleware/messageComposer/attachments.ts +1 -2
- package/src/messageComposer/middleware/messageComposer/cleanData.ts +1 -1
- package/src/messageComposer/middleware/messageComposer/compositionValidation.ts +2 -2
- package/src/messageComposer/middleware/messageComposer/messageComposerState.ts +2 -2
- package/src/messageComposer/middleware/messageComposer/sharedLocation.ts +4 -3
- package/src/messageComposer/middleware/messageComposer/textComposer.ts +2 -2
- package/src/messageComposer/middleware/messageComposer/types.ts +3 -4
- package/src/messageComposer/middleware/messageComposer/userDataInjection.ts +9 -5
- package/src/messageComposer/middleware/pollComposer/state.ts +0 -2
- package/src/messageComposer/middleware/pollComposer/types.ts +4 -7
- package/src/messageComposer/middleware/textComposer/TextComposerMiddlewareExecutor.ts +10 -1
- package/src/messageComposer/middleware/textComposer/commandEffects.ts +4 -4
- package/src/messageComposer/middleware/textComposer/commandUtils.ts +3 -6
- package/src/messageComposer/middleware/textComposer/commands.ts +3 -3
- package/src/messageComposer/middleware/textComposer/mentionUtils.ts +1 -1
- package/src/messageComposer/middleware/textComposer/mentions.ts +31 -15
- package/src/messageComposer/middleware/textComposer/types.ts +9 -4
- package/src/messageComposer/pollComposer.ts +6 -8
- package/src/messageComposer/textComposer.ts +27 -2
- package/src/messageComposer/types.ts +6 -28
- package/src/messageDelivery/MessageDeliveryReporter.ts +101 -45
- package/src/messageDelivery/MessageReceiptsTracker.ts +294 -21
- package/src/messageOperations/MessageOperationStatePolicy.ts +77 -0
- package/src/messageOperations/MessageOperations.ts +212 -0
- package/src/messageOperations/index.ts +10 -0
- package/src/messageOperations/types.ts +64 -0
- package/src/moderation.ts +38 -431
- package/src/notifications/types.ts +8 -7
- package/src/offline-support/offline_support_api.ts +200 -133
- package/src/offline-support/offline_sync_manager.ts +23 -44
- package/src/offline-support/types.ts +23 -26
- package/src/offline-support/util.ts +5 -4
- package/src/pagination/FilterBuilder.ts +4 -1
- package/src/pagination/ItemIndex.ts +25 -0
- package/src/pagination/cursorDerivation/createdAtAroundPaginationFlags.ts +73 -0
- package/src/pagination/cursorDerivation/idAroundPaginationFlags.ts +53 -0
- package/src/pagination/cursorDerivation/index.ts +1 -0
- package/src/pagination/cursorDerivation/linearPaginationFlags.ts +86 -0
- package/src/pagination/filterCompiler.ts +196 -0
- package/src/pagination/index.ts +1 -3
- package/src/pagination/paginators/BasePaginator.ts +2859 -0
- package/src/pagination/paginators/ChannelPaginator.ts +729 -0
- package/src/pagination/paginators/MessageIntervalPaginator.ts +1116 -0
- package/src/pagination/paginators/MessagePaginator.ts +508 -0
- package/src/pagination/paginators/PinnedMessagePaginator.ts +108 -0
- package/src/pagination/paginators/ReminderPaginator.ts +107 -0
- package/src/pagination/paginators/UserGroupPaginator.ts +127 -0
- package/src/pagination/paginators/index.ts +7 -0
- package/src/pagination/paginators/stateThrottling.ts +31 -0
- package/src/pagination/sortCompiler.ts +193 -0
- package/src/pagination/types.normalization.ts +14 -0
- package/src/pagination/utility.normalization.ts +106 -0
- package/src/pagination/utility.queryChannel.ts +84 -0
- package/src/pagination/utility.search.ts +80 -0
- package/src/permissions.ts +7 -8
- package/src/poll.ts +101 -110
- package/src/poll_manager.ts +14 -8
- package/src/reminders/Reminder.ts +2 -5
- package/src/reminders/ReminderManager.ts +19 -21
- package/src/search/BaseSearchSource.ts +0 -3
- package/src/search/ChannelMemberSearchSource.ts +7 -1
- package/src/search/ChannelSearchSource.ts +10 -3
- package/src/search/MessageSearchSource.ts +29 -30
- package/src/search/UserSearchSource.ts +12 -8
- package/src/search/types.ts +3 -4
- package/src/segment.ts +1 -95
- package/src/signing.ts +107 -67
- package/src/store.ts +2 -1
- package/src/thread.ts +562 -238
- package/src/thread_manager.ts +37 -16
- package/src/token_manager.ts +21 -10
- package/src/types.ts +364 -4533
- package/src/uploadManager.ts +8 -0
- package/src/utils/FixedSizeQueueCache.ts +12 -6
- package/src/utils/WithSubscriptions.ts +2 -1
- package/src/utils/concurrency.ts +4 -4
- package/src/utils/mergeWith/mergeWith.ts +3 -3
- package/src/utils/mergeWith/mergeWithCore.ts +140 -164
- package/src/utils/mergeWith/mergeWithDiff.ts +3 -3
- package/src/utils/retryable.ts +117 -0
- package/src/utils/throttling/throttle.ts +130 -0
- package/src/utils.ts +208 -754
- package/dist/types/channel_manager.d.ts +0 -122
- package/dist/types/events.d.ts +0 -72
- package/dist/types/pagination/BasePaginator.d.ts +0 -69
- package/dist/types/pagination/ReminderPaginator.d.ts +0 -16
- package/dist/types/pagination/UserGroupPaginator.d.ts +0 -21
- package/src/channel_manager.ts +0 -830
- package/src/events.ts +0 -75
- package/src/pagination/BasePaginator.ts +0 -184
- package/src/pagination/ReminderPaginator.ts +0 -56
- package/src/pagination/UserGroupPaginator.ts +0 -93
package/src/client_state.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import type { UserResponse } from './types';
|
|
1
|
+
import type { OwnUserResponse, UserResponse } from './types';
|
|
2
2
|
import type { StreamChat } from './client';
|
|
3
3
|
|
|
4
4
|
/**
|
|
5
|
-
*
|
|
5
|
+
* Container class for the client state.
|
|
6
6
|
*/
|
|
7
7
|
export class ClientState {
|
|
8
8
|
private client: StreamChat;
|
|
9
9
|
users: {
|
|
10
|
-
[key: string]: UserResponse;
|
|
10
|
+
[key: string]: UserResponse | OwnUserResponse;
|
|
11
11
|
};
|
|
12
12
|
userChannelReferences: { [key: string]: { [key: string]: boolean } };
|
|
13
13
|
constructor({ client }: { client: StreamChat }) {
|
|
@@ -25,7 +25,7 @@ export class ClientState {
|
|
|
25
25
|
}
|
|
26
26
|
}
|
|
27
27
|
|
|
28
|
-
updateUser(user?: UserResponse) {
|
|
28
|
+
updateUser(user?: UserResponse | OwnUserResponse) {
|
|
29
29
|
if (user != null && this.client._cacheEnabled()) {
|
|
30
30
|
this.users[user.id] = user;
|
|
31
31
|
}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* InstanceConfigurationService is a singleton class that is used to store the configuration for the instances of classes exposed by the SKD such as:
|
|
3
|
+
* - StreamChat
|
|
4
|
+
* - Channel
|
|
5
|
+
* - Thread
|
|
6
|
+
* - MessageComposer
|
|
7
|
+
*
|
|
8
|
+
* Every existing and future instance configuration of the above classes will be setup using the following pattern:
|
|
9
|
+
* - StreamChat: StreamChat.setClientSetupFunction(setupFunction)
|
|
10
|
+
* - Channel: StreamChat.setChannelSetupFunction(setupFunction)
|
|
11
|
+
* - Thread: StreamChat.setThreadSetupFunction(setupFunction)
|
|
12
|
+
* - MessageComposer: StreamChat.setMessageComposerSetupFunction(setupFunction)
|
|
13
|
+
*
|
|
14
|
+
* The setupFunction is a function that is used to set up the instance configuration.
|
|
15
|
+
*/
|
|
16
|
+
|
|
17
|
+
import { StateStore } from '../store';
|
|
18
|
+
import type {
|
|
19
|
+
ChannelSetupState,
|
|
20
|
+
MessageComposerSetupState,
|
|
21
|
+
SetInstanceConfigurationFunctions,
|
|
22
|
+
SetInstanceConfigurationServiceStates,
|
|
23
|
+
StreamChatSetupState,
|
|
24
|
+
ThreadSetupState,
|
|
25
|
+
} from './types';
|
|
26
|
+
|
|
27
|
+
type InstanceKey = keyof SetInstanceConfigurationServiceStates;
|
|
28
|
+
|
|
29
|
+
export class InstanceConfigurationService {
|
|
30
|
+
private static instance: InstanceConfigurationService;
|
|
31
|
+
private setupStates: SetInstanceConfigurationServiceStates = {
|
|
32
|
+
Channel: new StateStore<ChannelSetupState>({
|
|
33
|
+
setupFunction: null,
|
|
34
|
+
}),
|
|
35
|
+
MessageComposer: new StateStore<MessageComposerSetupState>({
|
|
36
|
+
setupFunction: null,
|
|
37
|
+
}),
|
|
38
|
+
StreamChat: new StateStore<StreamChatSetupState>({
|
|
39
|
+
setupFunction: null,
|
|
40
|
+
}),
|
|
41
|
+
Thread: new StateStore<ThreadSetupState>({
|
|
42
|
+
setupFunction: null,
|
|
43
|
+
}),
|
|
44
|
+
};
|
|
45
|
+
|
|
46
|
+
setSetupFunctions(setupFunctions: SetInstanceConfigurationFunctions) {
|
|
47
|
+
for (const [instance, setupFunction] of Object.entries(setupFunctions)) {
|
|
48
|
+
const setupState =
|
|
49
|
+
this.setupStates[instance as keyof SetInstanceConfigurationServiceStates];
|
|
50
|
+
if (typeof setupState === 'undefined') return; // null is allowed
|
|
51
|
+
// todo: fix typing
|
|
52
|
+
(setupState as StateStore<{ setupFunction: unknown }>).partialNext({
|
|
53
|
+
setupFunction: setupFunction as SetInstanceConfigurationFunctions[InstanceKey],
|
|
54
|
+
});
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
get Channel() {
|
|
59
|
+
return this.setupStates.Channel;
|
|
60
|
+
}
|
|
61
|
+
|
|
62
|
+
get MessageComposer() {
|
|
63
|
+
return this.setupStates.MessageComposer;
|
|
64
|
+
}
|
|
65
|
+
|
|
66
|
+
get StreamChat() {
|
|
67
|
+
return this.setupStates.StreamChat;
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
get Thread() {
|
|
71
|
+
return this.setupStates.Thread;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from './types';
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import type { StreamChat } from '../client';
|
|
2
|
+
import type { MessageComposer } from '../messageComposer';
|
|
3
|
+
import type { Channel } from '../channel';
|
|
4
|
+
import type { Thread } from '../thread';
|
|
5
|
+
import type { StateStore } from '../store';
|
|
6
|
+
|
|
7
|
+
export type MessageComposerTearDownFunction = () => void;
|
|
8
|
+
|
|
9
|
+
export type MessageComposerSetupFunction = ({
|
|
10
|
+
composer,
|
|
11
|
+
}: {
|
|
12
|
+
composer: MessageComposer;
|
|
13
|
+
}) => void | MessageComposerTearDownFunction;
|
|
14
|
+
|
|
15
|
+
export type MessageComposerSetupState = {
|
|
16
|
+
/**
|
|
17
|
+
* Each `MessageComposer` runs this function each time its signature changes or
|
|
18
|
+
* whenever you run `MessageComposer.registerSubscriptions`. Function returned
|
|
19
|
+
* from `applyModifications` will be used as a cleanup function - it will be stored
|
|
20
|
+
* and ran before new modification is applied. Cleaning up only the
|
|
21
|
+
* modified parts is the general way to go but if your setup gets a bit
|
|
22
|
+
* complicated, feel free to restore the whole composer with `MessageComposer.restore`.
|
|
23
|
+
*/
|
|
24
|
+
setupFunction: MessageComposerSetupFunction | null;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
export type StreamChatTearDownFunction = () => void;
|
|
28
|
+
|
|
29
|
+
export type StreamChatSetupFunction = ({
|
|
30
|
+
client,
|
|
31
|
+
}: {
|
|
32
|
+
client: StreamChat;
|
|
33
|
+
}) => void | StreamChatTearDownFunction;
|
|
34
|
+
|
|
35
|
+
export type StreamChatSetupState = {
|
|
36
|
+
setupFunction: StreamChatSetupFunction | null;
|
|
37
|
+
};
|
|
38
|
+
|
|
39
|
+
export type ChannelTearDownFunction = () => void;
|
|
40
|
+
|
|
41
|
+
export type ChannelSetupFunction = ({
|
|
42
|
+
channel,
|
|
43
|
+
}: {
|
|
44
|
+
channel: Channel;
|
|
45
|
+
}) => void | ChannelTearDownFunction;
|
|
46
|
+
|
|
47
|
+
export type ChannelSetupState = {
|
|
48
|
+
setupFunction: ChannelSetupFunction | null;
|
|
49
|
+
};
|
|
50
|
+
|
|
51
|
+
export type ThreadTearDownFunction = () => void;
|
|
52
|
+
|
|
53
|
+
export type ThreadSetupFunction = ({
|
|
54
|
+
thread,
|
|
55
|
+
}: {
|
|
56
|
+
thread: Thread;
|
|
57
|
+
}) => void | ThreadTearDownFunction;
|
|
58
|
+
|
|
59
|
+
export type ThreadSetupState = {
|
|
60
|
+
setupFunction: ThreadSetupFunction | null;
|
|
61
|
+
};
|
|
62
|
+
|
|
63
|
+
export type SetInstanceConfigurationServiceStates = {
|
|
64
|
+
Channel: StateStore<ChannelSetupState>;
|
|
65
|
+
MessageComposer: StateStore<MessageComposerSetupState>;
|
|
66
|
+
StreamChat: StateStore<StreamChatSetupState>;
|
|
67
|
+
Thread: StateStore<ThreadSetupState>;
|
|
68
|
+
};
|
|
69
|
+
|
|
70
|
+
export type SetupFnOf<T> =
|
|
71
|
+
T extends StateStore<infer S>
|
|
72
|
+
? S extends { setupFunction?: infer F }
|
|
73
|
+
? F
|
|
74
|
+
: never
|
|
75
|
+
: never;
|
|
76
|
+
|
|
77
|
+
export type SetInstanceConfigurationFunctions = {
|
|
78
|
+
[K in keyof SetInstanceConfigurationServiceStates]?: SetupFnOf<
|
|
79
|
+
SetInstanceConfigurationServiceStates[K]
|
|
80
|
+
>;
|
|
81
|
+
};
|