/*! * Copyright Adaptavist 2023 (c) All rights reserved */ import { ActivityLogTypeReturnType, ActivityLogTypeFields, SelectActivityLogTypeReturnType } from './activityLogType'; import { BoardViewReturnType, BoardViewFields, SelectBoardViewReturnType } from './boardView'; import { ColumnReturnType, ColumnFields, SelectColumnReturnType } from './column'; import { BoardGroupReturnType, BoardGroupFields, SelectBoardGroupReturnType } from './group'; import { ItemReturnType, ItemFields, SelectItemReturnType } from './item'; import { SelectTagReturnType, TagFields, TagReturnType } from './tag'; import { SelectUpdateReturnType, UpdateFields, UpdateReturnType } from './update'; import { SelectUserReturnType, UserFields, UserReturnType } from './user'; import { SelectWorkspaceReturnType, WorkspaceFields, WorkspaceReturnType } from './workspace'; import { OperationFields } from './typeOptions'; import { ItemsPageArgs, ItemsPageFields, ItemsPageReturnType, SelectItemsPageReturnType } from './itemsPage'; export declare type SelectBoardReturnType = { [P in keyof S]: P extends 'activity_logs' ? Array['fields']>> : P extends 'columns' ? Array['fields']>> : P extends 'creator' ? SelectUserReturnType['fields']> : P extends 'groups' ? Array['fields']>> : P extends 'items' ? Array['fields']>> : P extends 'items_page' ? SelectItemsPageReturnType['fields']> : P extends 'owners' ? Array['fields']>> : P extends 'subscribers' ? Array['fields']>> : P extends 'tags' ? Array['fields']>> : P extends 'top_group' ? SelectBoardGroupReturnType['fields']> : P extends 'updates' ? Array['fields']>> : P extends 'views' ? Array['fields']>> : P extends 'workspace' ? SelectWorkspaceReturnType['fields']> : P extends keyof BoardReturnType ? BoardReturnType[P] : BoardReturnType; }; export interface BoardFields extends OperationFields { /** * The board log events. */ activity_logs?: { args?: { /** * Number of items to get, the default is 25. */ limit?: number; /** * Page number to get, starting at 1. */ page?: number; /** * User ids to filter. */ user_ids?: number[]; /** * Column ids to filter */ column_ids?: string[]; /** * Group ids to filter */ group_ids?: string[]; /** * Item id to filter */ item_ids?: number[]; /** * From timestamp (ISO8601) */ from?: string; /** * To timestamp (ISO8601) */ to?: string; }; fields: ActivityLogTypeFields; }; /** * The board's folder unique identifier. */ board_folder_id?: boolean; /** * The board's kind (public / private / share). */ board_kind?: boolean; /** * The board's visible columns. */ columns?: { args?: { /** * A list of column unique identifiers. */ ids?: string[]; /** * A list of column types. */ types?: string[]; }; fields: ColumnFields; }; /** * Get the board communication value - typically meeting ID */ communication?: boolean; /** * The creator of the board. */ creator?: { fields: UserFields; }; /** * The board's description. */ description?: boolean; /** * The board's visible groups. */ groups?: { args?: { /** * A list of group unique identifiers. */ ids?: string[]; }; fields: BoardGroupFields; }; /** * The unique identifier of the board. */ id?: boolean; /** * The Board's item nickname, one of a predefined set of values, or a custom user value */ item_terminology?: boolean; /** * The board's items (rows). */ items?: { args?: { /** * A list of items unique identifiers. */ ids?: number[]; /** * Number of items to get */ limit?: number; /** * Page number to get, starting at 1. */ page?: number; /** * Get the recently created items at the top of the list */ newest_first?: boolean; /** * When providing a list of item IDs, this flag will exclude items that are archived, deleted or belong to deleted items */ exclude_nonactive?: boolean; }; fields: ItemFields; }; /** * The number of items on the board */ items_count?: boolean; /** * The board's items page. */ items_page?: { args?: ItemsPageArgs; fields: ItemsPageFields; }; /** * The board's name. */ name?: boolean; /** * List of board owners */ owners?: { fields: UserFields; }; /** * The board's permissions. */ permissions?: boolean; /** * The board's state (all / active / archived / deleted). */ state?: boolean; /** * The board's subscribers. */ subscribers?: { fields: UserFields; }; /** * The board's specific tags. */ tags?: { fields: TagFields; }; /** * The top group at this board. */ top_group?: { fields: BoardGroupFields; }; /** * The board object type. */ type?: boolean; /** * The last time the board was updated at. */ updated_at?: boolean; /** * The board's updates. */ updates?: { args?: { /** * The specific ID(s) to return updates for. */ ids?: number[]; /** * Number of items to get, the default is 25. */ limit?: number; /** * Page number to get, starting at 1. */ page?: number; }; fields: UpdateFields; }; /** * The board's URL. */ url?: boolean; /** * The board's views. */ views?: { args?: { /** * A list of view unique identifiers. */ ids?: number[]; /** * The view's type */ type?: string; }; fields: BoardViewFields; }; /** * The workspace that contains this board (null for main workspace). */ workspace?: { fields: WorkspaceFields; }; /** * The board's workspace unique identifier (null for main workspace). */ workspace_id?: boolean; } export interface BoardReturnType { /** * The board log events. */ activity_logs: ActivityLogTypeReturnType[] | null; /** * The board's folder unique identifier. */ board_folder_id: number | null; /** * The board's kind (public / private / share). */ board_kind: BoardKind; /** * The board's visible columns. */ columns: ColumnReturnType[] | null; /** * Get the board communication value - typically meeting ID */ communication: string | null; /** * The creator of the board. */ creator: UserReturnType; /** * The board's description. */ description: string | null; /** * The board's visible groups. */ groups: BoardGroupReturnType[] | null; /** * The unique identifier of the board. */ id: string; /** * The Board's item nickname, one of a predefined set of values, or a custom user value */ item_terminology: string | null; /** * The board's items (rows). */ items: ItemReturnType[] | null; /** * The number of items on the board */ items_count: number | null; /** * The board's items page. */ items_page: ItemsPageReturnType | null; /** * The board's name. */ name: string; /** * List of board owners */ owners: UserReturnType[]; /** * The board's permissions. */ permissions: string; /** * The board's state (all / active / archived / deleted). */ state: 'all' | 'active' | 'archived' | 'deleted'; /** * The board's subscribers. */ subscribers: UserReturnType[]; /** * The board's specific tags. */ tags: TagReturnType[] | null; /** * The top group at this board. */ top_group: BoardGroupReturnType; /** * The board object type. */ type: 'board' | 'sub_items_board' | 'document' | 'custom_object'; /** * The last time the board was updated at. */ updated_at: string | null; /** * The board's updates. */ updates: UpdateReturnType[] | null; /** * The board's URL. */ url: string | null; /** * The board's views. */ views: BoardViewReturnType[] | null; /** * The workspace that contains this board (null for main workspace). */ workspace: WorkspaceReturnType | null; /** * The board's workspace unique identifier (null for main workspace). */ workspace_id: number | null; } export declare type DuplicateBoardType = 'duplicate_board_with_structure' | 'duplicate_board_with_pulses' | 'duplicate_board_with_pulses_and_updates'; export declare type BoardAttributes = 'name' | 'description' | 'communication'; export declare type BoardsOrderBy = 'created_at' | 'used_at'; export declare type BoardKind = 'public' | 'private' | 'share'; export declare type BoardSubscriberKind = 'subscriber' | 'owner'; //# sourceMappingURL=board.d.ts.map