mirror of
https://github.com/nestjs/nest.git
synced 2026-02-21 23:11:44 +00:00
27 lines
687 B
TypeScript
27 lines
687 B
TypeScript
import type {
|
|
ClassProvider,
|
|
FactoryProvider,
|
|
Provider,
|
|
ValueProvider,
|
|
} from '@nestjs/common';
|
|
import { isUndefined } from '@nestjs/common/internal';
|
|
|
|
export function isClassProvider<T = any>(
|
|
provider: Provider,
|
|
): provider is ClassProvider<T> {
|
|
return Boolean((provider as ClassProvider<T>)?.useClass);
|
|
}
|
|
|
|
export function isValueProvider<T = any>(
|
|
provider: Provider,
|
|
): provider is ValueProvider<T> {
|
|
const providerValue = (provider as ValueProvider)?.useValue;
|
|
return !isUndefined(providerValue);
|
|
}
|
|
|
|
export function isFactoryProvider<T = any>(
|
|
provider: Provider,
|
|
): provider is FactoryProvider<T> {
|
|
return Boolean((provider as FactoryProvider).useFactory);
|
|
}
|