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)
8.0 KiB
8.0 KiB
API Report File for "@angular/animations"
Do not edit this file. It is a report generated by API Extractor.
import * as i0 from '@angular/core';
// @public @deprecated
export function animate(timings: string | number, styles?: AnimationStyleMetadata | AnimationKeyframesSequenceMetadata | null): AnimationAnimateMetadata;
// @public @deprecated
export function animateChild(options?: AnimateChildOptions | null): AnimationAnimateChildMetadata;
// @public @deprecated
export interface AnimateChildOptions extends AnimationOptions {
// (undocumented)
duration?: number | string;
}
// @public @deprecated
export type AnimateTimings = {
duration: number;
delay: number;
easing: string | null;
};
// @public @deprecated
export function animation(steps: AnimationMetadata | AnimationMetadata[], options?: AnimationOptions | null): AnimationReferenceMetadata;
// @public @deprecated
export interface AnimationAnimateChildMetadata extends AnimationMetadata {
options: AnimationOptions | null;
}
// @public @deprecated
export interface AnimationAnimateMetadata extends AnimationMetadata {
styles: AnimationStyleMetadata | AnimationKeyframesSequenceMetadata | null;
timings: string | number | AnimateTimings;
}
// @public @deprecated
export interface AnimationAnimateRefMetadata extends AnimationMetadata {
animation: AnimationReferenceMetadata;
options: AnimationOptions | null;
}
// @public @deprecated
export abstract class AnimationBuilder {
abstract build(animation: AnimationMetadata | AnimationMetadata[]): AnimationFactory;
// (undocumented)
static ɵfac: i0.ɵɵFactoryDeclaration<AnimationBuilder, never>;
// (undocumented)
static ɵprov: i0.ɵɵInjectableDeclaration<any>;
}
// @public @deprecated
interface AnimationEvent_2 {
disabled: boolean;
element: any;
fromState: string;
phaseName: string;
toState: string;
totalTime: number;
triggerName: string;
}
export { AnimationEvent_2 as AnimationEvent }
// @public @deprecated
export abstract class AnimationFactory {
abstract create(element: any, options?: AnimationOptions): AnimationPlayer;
}
// @public @deprecated
export interface AnimationGroupMetadata extends AnimationMetadata {
options: AnimationOptions | null;
steps: AnimationMetadata[];
}
// @public @deprecated
export interface AnimationKeyframesSequenceMetadata extends AnimationMetadata {
steps: AnimationStyleMetadata[];
}
// @public @deprecated
export interface AnimationMetadata {
// (undocumented)
type: AnimationMetadataType;
}
// @public @deprecated
export enum AnimationMetadataType {
Animate = 4,
AnimateChild = 9,
AnimateRef = 10,
Group = 3,
Keyframes = 5,
Query = 11,
Reference = 8,
Sequence = 2,
Stagger = 12,
State = 0,
Style = 6,
Transition = 1,
Trigger = 7
}
// @public @deprecated
export interface AnimationOptions {
delay?: number | string;
params?: {
[name: string]: any;
};
}
// @public @deprecated
export interface AnimationPlayer {
beforeDestroy?: () => any;
destroy(): void;
finish(): void;
getPosition(): number;
hasStarted(): boolean;
init(): void;
onDestroy(fn: () => void): void;
onDone(fn: () => void): void;
onStart(fn: () => void): void;
parentPlayer: AnimationPlayer | null;
pause(): void;
play(): void;
reset(): void;
restart(): void;
setPosition(position: number): void;
readonly totalTime: number;
}
// @public @deprecated
export interface AnimationQueryMetadata extends AnimationMetadata {
animation: AnimationMetadata | AnimationMetadata[];
options: AnimationQueryOptions | null;
selector: string;
}
// @public @deprecated
export interface AnimationQueryOptions extends AnimationOptions {
limit?: number;
optional?: boolean;
}
// @public @deprecated
export interface AnimationReferenceMetadata extends AnimationMetadata {
animation: AnimationMetadata | AnimationMetadata[];
options: AnimationOptions | null;
}
// @public @deprecated
export interface AnimationSequenceMetadata extends AnimationMetadata {
options: AnimationOptions | null;
steps: AnimationMetadata[];
}
// @public @deprecated
export interface AnimationStaggerMetadata extends AnimationMetadata {
animation: AnimationMetadata | AnimationMetadata[];
timings: string | number;
}
// @public @deprecated
export interface AnimationStateMetadata extends AnimationMetadata {
name: string;
options?: {
params: {
[name: string]: any;
};
};
styles: AnimationStyleMetadata;
}
// @public @deprecated
export interface AnimationStyleMetadata extends AnimationMetadata {
offset: number | null;
styles: '*' | {
[key: string]: string | number;
} | Array<{
[key: string]: string | number;
} | '*'>;
}
// @public @deprecated
export interface AnimationTransitionMetadata extends AnimationMetadata {
animation: AnimationMetadata | AnimationMetadata[];
expr: string | ((fromState: string, toState: string, element?: any, params?: {
[key: string]: any;
}) => boolean);
options: AnimationOptions | null;
}
// @public @deprecated
export interface AnimationTriggerMetadata extends AnimationMetadata {
definitions: AnimationMetadata[];
name: string;
options: {
params?: {
[name: string]: any;
};
} | null;
}
// @public @deprecated
export const AUTO_STYLE = "*";
// @public @deprecated
export function group(steps: AnimationMetadata[], options?: AnimationOptions | null): AnimationGroupMetadata;
// @public @deprecated
export function keyframes(steps: AnimationStyleMetadata[]): AnimationKeyframesSequenceMetadata;
// @public @deprecated
export class NoopAnimationPlayer implements AnimationPlayer {
constructor(duration?: number, delay?: number);
// (undocumented)
destroy(): void;
// (undocumented)
finish(): void;
// (undocumented)
getPosition(): number;
// (undocumented)
hasStarted(): boolean;
// (undocumented)
init(): void;
// (undocumented)
onDestroy(fn: () => void): void;
// (undocumented)
onDone(fn: () => void): void;
// (undocumented)
onStart(fn: () => void): void;
// (undocumented)
parentPlayer: AnimationPlayer | null;
// (undocumented)
pause(): void;
// (undocumented)
play(): void;
// (undocumented)
reset(): void;
// (undocumented)
restart(): void;
// (undocumented)
setPosition(position: number): void;
// (undocumented)
readonly totalTime: number;
}
// @public @deprecated
export function query(selector: string, animation: AnimationMetadata | AnimationMetadata[], options?: AnimationQueryOptions | null): AnimationQueryMetadata;
// @public @deprecated
export function sequence(steps: AnimationMetadata[], options?: AnimationOptions | null): AnimationSequenceMetadata;
// @public @deprecated
export function stagger(timings: string | number, animation: AnimationMetadata | AnimationMetadata[]): AnimationStaggerMetadata;
// @public @deprecated
export function state(name: string, styles: AnimationStyleMetadata, options?: {
params: {
[name: string]: any;
};
}): AnimationStateMetadata;
// @public @deprecated
export function style(tokens: '*' | {
[key: string]: string | number;
} | Array<'*' | {
[key: string]: string | number;
}>): AnimationStyleMetadata;
// @public @deprecated
export function transition(stateChangeExpr: string | ((fromState: string, toState: string, element?: any, params?: {
[key: string]: any;
}) => boolean), steps: AnimationMetadata | AnimationMetadata[], options?: AnimationOptions | null): AnimationTransitionMetadata;
// @public @deprecated
export function trigger(name: string, definitions: AnimationMetadata[]): AnimationTriggerMetadata;
// @public @deprecated
export function useAnimation(animation: AnimationReferenceMetadata, options?: AnimationOptions | null): AnimationAnimateRefMetadata;
// (No @packageDocumentation comment for this package)