From 4b9948c1be6d6fb0a7248358698d02e44727c66b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mi=C5=A1ko=20Hevery?= Date: Thu, 29 Nov 2018 15:51:27 -0800 Subject: [PATCH] fix(core): More precise return type for `InjectableDecorator` (#27360) closes #26942 PR Close #27360 --- packages/core/src/di/injectable.ts | 6 +++--- tools/public_api_guard/core/core.d.ts | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/packages/core/src/di/injectable.ts b/packages/core/src/di/injectable.ts index 4e8420232e..fd2a5c3f5d 100644 --- a/packages/core/src/di/injectable.ts +++ b/packages/core/src/di/injectable.ts @@ -8,7 +8,7 @@ import {compileInjectable as render3CompileInjectable} from '../render3/jit/injectable'; import {Type} from '../type'; -import {makeDecorator} from '../util/decorators'; +import {TypeDecorator, makeDecorator} from '../util/decorators'; import {InjectableDef, InjectableType, defineInjectable, getInjectableDef} from './defs'; import {ClassSansProvider, ConstructorSansProvider, ExistingSansProvider, FactorySansProvider, StaticClassSansProvider, ValueSansProvider} from './provider'; @@ -45,8 +45,8 @@ export interface InjectableDecorator { * {@example core/di/ts/metadata_spec.ts region='InjectableThrows'} * */ - (): any; - (options?: {providedIn: Type| 'root' | null}&InjectableProvider): any; + (): TypeDecorator; + (options?: {providedIn: Type| 'root' | null}&InjectableProvider): TypeDecorator; new (): Injectable; new (options?: {providedIn: Type| 'root' | null}&InjectableProvider): Injectable; } diff --git a/tools/public_api_guard/core/core.d.ts b/tools/public_api_guard/core/core.d.ts index 6524dde4a5..415869dac3 100644 --- a/tools/public_api_guard/core/core.d.ts +++ b/tools/public_api_guard/core/core.d.ts @@ -382,10 +382,10 @@ export interface Injectable { export declare const Injectable: InjectableDecorator; export interface InjectableDecorator { - (): any; + (): TypeDecorator; (options?: { providedIn: Type | 'root' | null; - } & InjectableProvider): any; + } & InjectableProvider): TypeDecorator; new (): Injectable; new (options?: { providedIn: Type | 'root' | null;