/** * @license * Copyright Google Inc. All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.io/license */ import { Type } from '../facade/type'; import { GetterFn, MethodFn, SetterFn } from './types'; export interface PlatformReflectionCapabilities { isReflectionEnabled(): boolean; factory(type: Type): Function; hasLifecycleHook(type: any, lcProperty: string): boolean; parameters(type: Type): any[][]; annotations(type: Type): any[]; propMetadata(typeOrFunc: Type): { [key: string]: any[]; }; getter(name: string): GetterFn; setter(name: string): SetterFn; method(name: string): MethodFn; importUri(type: Type): string; resourceUri(type: Type): string; resolveIdentifier(name: string, moduleUrl: string, members: string[] | null, runtime: any): any; resolveEnum(enumIdentifier: any, name: string): any; }