import { type IDataObject, type IExecuteFunctions, type INodeExecutionData, type INodeType, type INodeTypeDescription } from 'n8n-workflow'; import { getAuditEventsList } from './auditLogs'; import { searchBoards } from './boardLocator'; import { getBulkImportColumnFields, getColumnFields } from './columnMapper'; import { getAggregateGroupByColumns, getAggregateMinMaxColumns, getAggregateNumericColumns, getBoardColumns, getBoardDocColumns, getBoardFileColumns, getBoardLabelColumns, getBulkImportMatchColumns, getClearableBoardColumns, getColumnLabels, getFilterableBoardColumns, getFilterOperators, getItemColumnFiles, getItemUpdatesList, getTargetBoardColumns } from './columnOptions'; import { getDepartmentsList } from './departments'; import { searchDocs } from './docs'; import { getCustomActivitiesList } from './emailsActivities'; import { type BatteryEntry } from './multiLevel'; import { getArticleWorkspaceFolders, getBoardList, getCreateBoardWorkspaceFolders, getCreateFolderParentList, getDocImportWorkspaceFolders, getDocWorkspaceFolders, getFolderList, getFormWorkspaceFolders, getMoveDestinationFolderList, getProjectWorkspaceFolders, getUpdateFolderParentList, getWorkspaceFolders, getWorkspaces } from './filterOptions'; import { getFormQuestionsList, getFormTagsList } from './forms'; import { searchMeetings } from './notetaker'; import { getBoardGroups, getTargetBoardGroups, searchGroups } from './groupLocator'; import { searchItems } from './itemLocator'; import { searchWorkspaces } from './workspaceLocator'; import { getTeamsList, searchUsers, searchUsersAndTeams } from './userLocator'; import { MondayGraphQLClient, type MondayRequestInfo } from './MondayGraphQLClient'; import { getRequirableBoardColumns, getRequiredColumnsList, getValidationIfColumns, getValidationIfOperators, getValidationRulesList, getValidationThenColumns, getValidationThenOperators } from './validations'; import { getApiVersions } from './versionOptions'; export declare function buildBoardFieldSelection(options: { includeStructure?: boolean; includeCompleteData?: boolean; }): string; export declare function buildRequestInfoOutput(requestInfo: MondayRequestInfo, requestedApiVersion: string): IDataObject; export declare class Monday implements INodeType { description: INodeTypeDescription; methods: { listSearch: { searchBoards: typeof searchBoards; searchDocs: typeof searchDocs; searchGroups: typeof searchGroups; searchItems: typeof searchItems; searchMeetings: typeof searchMeetings; searchUsers: typeof searchUsers; searchUsersAndTeams: typeof searchUsersAndTeams; searchWorkspaces: typeof searchWorkspaces; }; loadOptions: { getAggregateGroupByColumns: typeof getAggregateGroupByColumns; getAggregateMinMaxColumns: typeof getAggregateMinMaxColumns; getAggregateNumericColumns: typeof getAggregateNumericColumns; getApiVersions: typeof getApiVersions; getArticleWorkspaceFolders: typeof getArticleWorkspaceFolders; getAuditEventsList: typeof getAuditEventsList; getBoardColumns: typeof getBoardColumns; getBoardDocColumns: typeof getBoardDocColumns; getBoardFileColumns: typeof getBoardFileColumns; getBoardLabelColumns: typeof getBoardLabelColumns; getBulkImportMatchColumns: typeof getBulkImportMatchColumns; getClearableBoardColumns: typeof getClearableBoardColumns; getColumnLabels: typeof getColumnLabels; getCreateBoardWorkspaceFolders: typeof getCreateBoardWorkspaceFolders; getCreateFolderParentList: typeof getCreateFolderParentList; getCustomActivitiesList: typeof getCustomActivitiesList; getDepartmentsList: typeof getDepartmentsList; getDocImportWorkspaceFolders: typeof getDocImportWorkspaceFolders; getDocWorkspaceFolders: typeof getDocWorkspaceFolders; getFilterableBoardColumns: typeof getFilterableBoardColumns; getFilterOperators: typeof getFilterOperators; getFolderList: typeof getFolderList; getFormQuestionsList: typeof getFormQuestionsList; getFormTagsList: typeof getFormTagsList; getFormWorkspaceFolders: typeof getFormWorkspaceFolders; getBoardGroups: typeof getBoardGroups; getItemColumnFiles: typeof getItemColumnFiles; getItemUpdatesList: typeof getItemUpdatesList; getBoardList: typeof getBoardList; getMoveDestinationFolderList: typeof getMoveDestinationFolderList; getProjectWorkspaceFolders: typeof getProjectWorkspaceFolders; getRequirableBoardColumns: typeof getRequirableBoardColumns; getRequiredColumnsList: typeof getRequiredColumnsList; getTargetBoardColumns: typeof getTargetBoardColumns; getTargetBoardGroups: typeof getTargetBoardGroups; getTeamsList: typeof getTeamsList; getUpdateFolderParentList: typeof getUpdateFolderParentList; getValidationIfColumns: typeof getValidationIfColumns; getValidationIfOperators: typeof getValidationIfOperators; getValidationRulesList: typeof getValidationRulesList; getValidationThenColumns: typeof getValidationThenColumns; getValidationThenOperators: typeof getValidationThenOperators; getWorkspaceFolders: typeof getWorkspaceFolders; getWorkspaces: typeof getWorkspaces; }; resourceMapping: { getBulkImportColumnFields: typeof getBulkImportColumnFields; getColumnFields: typeof getColumnFields; }; }; execute(this: IExecuteFunctions): Promise; } export declare function buildMentionsList(userIds: unknown, teamIds: unknown): Array<{ id: string; type: string; }>; export declare function parseGraphqlVariables(this: IExecuteFunctions, itemIndex: number): Record | undefined; export declare function buildGroupPositionArgs(position: string | undefined, anchorGroupId: string | undefined): { method?: 'after_at' | 'before_at'; relativeTo?: string; } | 'missing-anchor'; export declare function findEdgeGroupId(groups: Array<{ id: string; position: string; }>, excludeGroupId: string, edge: 'top' | 'bottom'): string | undefined; export declare function buildUpdateGroupMutation(updates: Array<{ attribute: 'title' | 'color' | GroupRepositionAttribute; value: string; }>): { query: string; variables: Record; }; type GroupRepositionAttribute = 'relative_position_after' | 'relative_position_before'; export declare function resolveArchiveOrDeleteAction(this: IExecuteFunctions, operation: string, itemIndex: number): 'archive' | 'delete'; export declare function buildReplacePlan(current: { subscribers?: SubscriberEntity[]; owners?: SubscriberEntity[]; team_subscribers?: SubscriberEntity[]; team_owners?: SubscriberEntity[]; }, desiredUserIds: string[], desiredTeamIds: string[], executingUserId: string): { removeUserIds: string[]; removeTeamIds: string[]; keptExecutingUser: boolean; }; interface SubscriberEntity extends IDataObject { id?: string; name?: string; email?: string; } export declare function buildSubscriberRows(board: { subscribers?: SubscriberEntity[]; owners?: SubscriberEntity[]; team_subscribers?: SubscriberEntity[]; team_owners?: SubscriberEntity[]; }): IDataObject[]; export declare const TEAM_SUBSCRIBERS_LIMIT = 1000; export declare function buildSubscribersSelection(include: { subscribers: boolean; owners: boolean; teamSubscribers: boolean; teamOwners: boolean; }): string; interface ActivityLogRow extends IDataObject { id?: string; event?: string; entity?: string; data?: string | null; user_id?: string; account_id?: string; created_at?: string; } export declare function formatActivityLogRow(row: ActivityLogRow): IDataObject; export declare const MAX_NOTIFICATION_RECIPIENTS = 30; export declare function buildCreateNotificationsMutation(userIds: string[], targetType: 'Project' | 'Post'): { query: string; varDefs: string[]; }; export declare function formatColumnSchemaRow(column: IDataObject): IDataObject; export declare function assertRollupFunctionAllowed(node: ReturnType, itemIndex: number, columnType: string, rollupFunction: string): void; export declare function buildRunPromptConfig(options: IDataObject): IDataObject | null; export declare function resolvePlatformAgentContextId(userContextId: string): string; export declare function parsePlatformAgentHttpBody(raw: unknown): IDataObject; export declare function buildPlatformAgentOutput(raw: unknown, sentContextId: string): IDataObject; export declare const MAX_CLEAR_ITEMS = 10; export declare const MAX_CLEAR_COLUMNS = 10; export declare function buildClearColumnValuesMutation(itemIds: string[], columnIds: string[]): { query: string; variables: Record; }; export declare const MAX_BULK_ARCHIVE_DELETE_ITEMS = 50; export declare function buildBulkArchiveOrDeleteMutation(action: 'archive' | 'delete', itemIds: string[]): { query: string; variables: Record; }; export declare const MOVE_UNMAPPABLE_COLUMN_TYPES: Set; export declare function completeMoveColumnsMapping(picked: Array<{ source: string; target?: string | null; }>, sourceColumns: Array<{ id: string; type: string; }>, targetColumns: Array<{ id: string; type: string; }>): Array<{ source: string; target: string | null; }>; export declare function moveItem(this: IExecuteFunctions, client: MondayGraphQLClient, itemIndex: number): Promise; interface RawItemColumnValue extends IDataObject { text?: string | null; column?: { title?: string; settings_str?: string; } | null; battery_value?: BatteryEntry[] | null; display_value?: string | null; } export declare function flattenItemColumns(columnValues: RawItemColumnValue[]): IDataObject; export declare function buildGetItemQuery(itemId: string, options: IDataObject): { query: string; variables: Record; }; type AssetRow = IDataObject & { id?: string; name?: string; public_url?: string; }; export declare function getManyAssets(this: IExecuteFunctions, client: MondayGraphQLClient, itemIndex: number): Promise; export declare function fetchItemUpdateAssets(this: IExecuteFunctions, client: MondayGraphQLClient, itemIndex: number, itemId: string, limit: number): Promise; export declare function scanBoardColumnAssets(this: IExecuteFunctions, client: MondayGraphQLClient, itemIndex: number, boardId: string, columnId: string, limit: number): Promise; export declare function buildUserFieldSelection(includeExtended: boolean): string; interface ColumnValueRow extends IDataObject { id: string; type?: string; text?: string | null; value?: string | null; column?: { title?: string; settings_str?: string; } | null; battery_value?: BatteryEntry[] | null; is_leaf?: boolean; display_value?: string | null; linked_item_ids?: string[] | null; linked_items?: Array<{ id: string; name: string; }> | null; dependency_links?: Array<{ linked_item_id: string; dependency_type?: number | null; lag?: number | null; }> | null; } export declare function formatColumnValueOutput(item: { id?: string; name?: string; }, columnValue: ColumnValueRow | undefined, columnId: string): IDataObject; export {};