// Copyright (c) 2023 Sourcefuse Technologies // // This software is released under the MIT License. // https://opensource.org/licenses/MIT import {BindingKey} from '@loopback/core'; import {ExpressRequestHandler} from '@loopback/rest'; import {SetupDatasourceFn} from 'loopback4-dynamic-datasource'; import {BINDING_PREFIX} from './constants'; import {HttpMethod} from './enums'; import {CoreConfig, TenantIdEncryptionFn} from './types'; export namespace SFCoreBindings { export const i18n = BindingKey.create(`${BINDING_PREFIX}.i18n`); export const config = BindingKey.create( 'sf.packages.core.config', ); export const EXPRESS_MIDDLEWARES = BindingKey.create( `sf.packages.core.expressMiddlewares`, ); export const TENANTID_ENCRYPTION_PROVIDER = BindingKey.create( `sf.auth.tenantid.encryption.provider`, ); export const DYNAMIC_DATASOURCE_MIDDLEWARES = BindingKey.create( `sf.packages.core.dynamicDatasourceMiddleware`, ); } const hiddenKey = 'sf.oas.hiddenEndpoints'; export type OasHiddenApi = { path: string; httpMethod: HttpMethod; }; export namespace OASBindings { export const HiddenEndpoint = BindingKey.create(hiddenKey); }