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 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 | import { TypedQueryOutput } from '../backend/dynamo';
import { Validator } from '../backend/validation';
import {
api400Body, api401Body, api500Body
} from './_shared';
import { FullFileObject } from './files';
import {
PagingTalkgroup, pagingTalkgroups
} from './users';
/**
* Retrieve a list of pages that match the given filters
* @summary Retrieve Pages List
* @tags Pages
*/
export type GetPagesApi = {
path: '/api/v2/pages/';
method: 'GET';
query: {
/**
* The talkgroup(s) to retrieve files from. This should be a pipe-separated list of integers
*/
tg?: PagingTalkgroup[];
/**
* Return files that started before this number
*/
before?: number;
};
responses: {
/**
* @contentType application/json
*/
200: {
before: number | null;
files: FullFileObject[];
query: TypedQueryOutput<FullFileObject>;
};
/**
* @contentType application/json
*/
400: typeof api400Body;
/**
* @contentType application/json
*/
401: typeof api401Body;
/**
* @contentType application/json
*/
500: typeof api500Body;
};
};
export const getPagesApiQueryValidator: Validator<GetPagesApi['query']> = {
tg: {
required: false,
parse: v => Number(v) as PagingTalkgroup,
types: {
array: {
exact: [ ...pagingTalkgroups, ],
},
},
},
before: {
required: false,
parse: v => Number(v),
types: {
number: {},
},
},
};
|