mirror of
https://github.com/angular/angular.git
synced 2026-09-14 13:54:52 +08:00
dfe7be4d2a
The static `ɵprov` field emitted on `@Injectable()` classes uses `ɵɵInjectableDeclaration<T>`.
When a subclass extends a generic `@Injectable()` base class with contravariant parameters
(such as callback/transformer methods depending on generic type parameters), TypeScript's
static side inheritance check (`typeof Sub extends typeof Super`) fails with `TS2417` because
`ɵɵInjectableDeclaration<Sub>` is not assignable to `ɵɵInjectableDeclaration<Super<any>>`.
Using `any` (`o.DYNAMIC_TYPE`) in `createInjectableType` avoids strict variance checks on
static inheritance for internal Ivy definitions and aligns with other Ivy declaration types.
(cherry picked from commit caeab598c9)
2.0 KiB
2.0 KiB
API Report File for "@angular/animations_browser"
Do not edit this file. It is a report generated by API Extractor.
import * as i0 from '@angular/core';
// @public @deprecated (undocumented)
export abstract class AnimationDriver {
// (undocumented)
abstract animate(element: any, keyframes: Array<Map<string, string | number>>, duration: number, delay: number, easing?: string | null, previousPlayers?: any[], scrubberAccessRequested?: boolean): any;
// (undocumented)
abstract computeStyle(element: any, prop: string, defaultValue?: string): string;
// (undocumented)
abstract containsElement(elm1: any, elm2: any): boolean;
abstract getParentElement(element: unknown): unknown;
// @deprecated (undocumented)
static NOOP: AnimationDriver;
// (undocumented)
abstract query(element: any, selector: string, multi: boolean): any[];
// (undocumented)
abstract validateAnimatableStyleProperty?: (prop: string) => boolean;
// (undocumented)
abstract validateStyleProperty(prop: string): boolean;
}
// @public @deprecated (undocumented)
export class NoopAnimationDriver implements AnimationDriver {
// (undocumented)
animate(element: any, keyframes: Array<Map<string, string | number>>, duration: number, delay: number, easing: string, previousPlayers?: any[], scrubberAccessRequested?: boolean): AnimationPlayer;
// (undocumented)
computeStyle(element: any, prop: string, defaultValue?: string): string;
// (undocumented)
containsElement(elm1: any, elm2: any): boolean;
// (undocumented)
getParentElement(element: unknown): unknown;
// (undocumented)
query(element: any, selector: string, multi: boolean): any[];
// (undocumented)
validateStyleProperty(prop: string): boolean;
// (undocumented)
static ɵfac: i0.ɵɵFactoryDeclaration<NoopAnimationDriver, never>;
// (undocumented)
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
}
// (No @packageDocumentation comment for this package)