-
Notifications
You must be signed in to change notification settings - Fork 70
/
keys.ts
40 lines (36 loc) · 1.31 KB
/
keys.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
// Copyright (c) 2023 Sourcefuse Technologies
//
// This software is released under the MIT License.
// https://opensource.org/licenses/MIT
import {IArchiveService, ISessionService, VideoChatInterface} from './types';
import {BindingKey} from '@loopback/core';
import {BINDING_PREFIX, IServiceConfig} from '@sourceloop/core';
import {MeetingLinkIdGenerator} from './services';
/**
* @namespace VideoChatBindings
* @const VideoChatProvider Main Parent Provider which binds @interface VideoChatInterface
*/
export namespace VideoChatBindings {
export const VideoChatProvider = BindingKey.create<VideoChatInterface>(
'sf.videochatprovider',
);
export const TwilioVideoChatProvider = BindingKey.create<VideoChatInterface>(
'sf.twiliovideochatprovider',
);
export const Config = BindingKey.create<IServiceConfig | null>(
`${BINDING_PREFIX}.videochat.config`,
);
}
export namespace ServiceBindings {
export const ArchiveChatService = BindingKey.create<IArchiveService>(
'services.ChatArchiveService',
);
export const SessionChatService = BindingKey.create<ISessionService>(
'services.ChatSessionService',
);
}
export const MeetLinkGeneratorProvider =
BindingKey.create<MeetingLinkIdGenerator>(
'provider.MeetingLinkGeneratorProvider',
);
export const VideoConfDatasource = 'videochatDb';