fix(common): let KeyValuePipe
accept type unions with null
(#36093)
`KeyValuePipe` currently accepts `null` values as well as `Map`s and a few others. However, due to the way in which TS overloads work, a type of `T|null` will not be accepted by `KeyValuePipe`'s signatures, even though both `T` and `null` individually would be. To make this work, each signature that accepts some type `T` has been duplicated with a second one below it that accepts a `T|null` and includes `null` in its return type. Fixes #35743 PR Close #36093
This commit is contained in:
7
goldens/public-api/common/common.d.ts
vendored
7
goldens/public-api/common/common.d.ts
vendored
@ -139,10 +139,17 @@ export declare class KeyValuePipe implements PipeTransform {
|
||||
transform<V>(input: {
|
||||
[key: string]: V;
|
||||
} | Map<string, V>, compareFn?: (a: KeyValue<string, V>, b: KeyValue<string, V>) => number): Array<KeyValue<string, V>>;
|
||||
transform<V>(input: {
|
||||
[key: string]: V;
|
||||
} | Map<string, V> | null, compareFn?: (a: KeyValue<string, V>, b: KeyValue<string, V>) => number): Array<KeyValue<string, V>> | null;
|
||||
transform<V>(input: {
|
||||
[key: number]: V;
|
||||
} | Map<number, V>, compareFn?: (a: KeyValue<number, V>, b: KeyValue<number, V>) => number): Array<KeyValue<number, V>>;
|
||||
transform<V>(input: {
|
||||
[key: number]: V;
|
||||
} | Map<number, V> | null, compareFn?: (a: KeyValue<number, V>, b: KeyValue<number, V>) => number): Array<KeyValue<number, V>> | null;
|
||||
transform<K, V>(input: Map<K, V>, compareFn?: (a: KeyValue<K, V>, b: KeyValue<K, V>) => number): Array<KeyValue<K, V>>;
|
||||
transform<K, V>(input: Map<K, V> | null, compareFn?: (a: KeyValue<K, V>, b: KeyValue<K, V>) => number): Array<KeyValue<K, V>> | null;
|
||||
}
|
||||
|
||||
export declare class Location {
|
||||
|
Reference in New Issue
Block a user