Appearance
type LooseParameters<T> = T extends (...args: infer P) => any ? P : never;
Like Parameters<T>, but doesn't require T to be a function ahead of time.
Parameters<T>
T