Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

267
Views
Precedencia de operadores en notación de matriz abreviada mecanografiada: typeof unknown[]

En el archivo de declaración del titiritero types.d.ts, me encontré con la siguiente definición de tipo:

 export declare type EvaluateFunc<T extends unknown[]> = (...params: InnerParams<T>) => Awaitable<unknown>; export declare type InnerParams<T extends unknown[]> = { [K in keyof T]: FlattenHandle<T[K]>; };

Mi pregunta es con respecto a <T se extiende desconocido []> y la precedencia del operador para typeof y [] .. ¿T se extiende desconocido? ¿O se está extendiendo unknown[] y, si es lo último, entonces el operador keyof se puede usar en el tipo Array ? Si es así, ¿mecanografiado toma esto como 'cualquier propiedad numérica de una matriz'? (también conocido como elemento de matriz).

Suponiendo que es el primero, y T se extiende desconocido, entonces, ¿cómo afecta el operador de matriz abreviada [] al operador typeof ? Solo por contexto, aquí está la definición de FlattenHandle :

 export declare type FlattenHandle<T> = T extends HandleOr<infer U> ? U : never;

Subpregunta: export declare : me tomé un descanso de TS durante medio año y ahora que regresé, los veo cada vez más. ¿Es una incorporación reciente? ¿Qué estamos tratando de decir aquí? ¿Que el tipo existe pero no se exportó en la fuente? Uno de los efectos de esta export declare es que mi IDE (PHPStorm) piensa que la clase ElementHandle existe, e incluso aparece en console.log, pero si Console.log(ElementHandle) obtendrá undefined :

 export declare class ElementHandle<ElementType extends Node = Element> extends JSHandle<ElementType> { #private; // ...

Gracias por tu ayuda.

about 4 years ago · Santiago Gelvez
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!