ResolvedSortKeyFields<SK, ResolvedFields>: SK extends readonly [infer A extends string, ...(infer B extends string[])]
    ? A extends keyof ResolvedFields
        ? {
            [Key in A]: Exclude<ResolvedFields[A], null>
        } & (B extends readonly never[]
            ? unknown
            : ResolvedSortKeyFields<B, ResolvedFields>)
        : never
    : never

Type Parameters

  • SK

    tuple of SortKey field names, e.g. ['viewCount', 'createdAt']

  • ResolvedFields

    resolved model fields

Returns

object type where the key is the sort key field name and the value is the resolved model field type

Example

{
* viewCount: number;
* createdAt: string;
* }