/** Represents the possible Baserow permissions */ export type BaserowPermission = "ADMIN" | "MEMBER" | "VIEWER" | "NO ACCESS" | "NO ROLE"; /** Represents different filter conjunctions */ export type FilterType = "AND" | "OR"; /** Represents different sort directions */ export type SortDirection = "ASC" | "DESC"; /** Basic structure for a filter */ export interface Filter { field: string | number; type: string; value: string | number | boolean | null | string[] | number[]; } /** Structure for nested filters */ export interface FilterGroup { filter_type: FilterType; filters: (Filter | FilterGroup)[]; } /** Basic structure for sorting */ export interface Sort { field: string | number; order: SortDirection; } /** Structure for row lookup via link row fields */ export interface RowLookup { [linkRowFieldIdentifier: `link_row_field__${string | number}__join`]: string; } /** Common pagination parameters */ export interface PaginationParams { page?: number; size?: number; } /** Common search parameters */ export interface SearchParams { search?: string; search_mode?: "SearchModes.MODE_FT_WITH_COUNT" | "SearchModes.MODE_COMPAT"; }