All files / src/apis/v2/titles list.ts

100% Statements 1/1
100% Branches 0/0
100% Functions 1/1
100% Lines 1/1

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36                                                              2x        
import { Params, Schema, Title, Titles } from '@/types/v2';
import type { V2 } from '../';
 
export type Options<V extends Schema, Ids extends Params.Ids<Title<V>['id']>> = V2.Options<V, true> & {
  /**
   * The title ids.
   */
  ids?: 'all' | Ids;
 
  /**
   * The page number.
   */
  page?: number;
 
  /**
   * The page size.
   */
  page_size?: number;
};
 
export type Response<V extends Schema, Ids extends Params.Ids<Title<V>['id']>> = Ids extends undefined
  ? Titles<V>
  : Title<V>[];
 
/**
 * Returns a list of titles available in the game.
 */
export function list<V extends Schema, O extends Schema = V, Ids extends Params.Ids<Title<O>['id']> = undefined>(
  this: V2.API<V>,
  options?: Options<O, Ids>
) {
  return this.fetch<Response<V, Ids>>('/v2/titles', {
    params: options,
  });
}