{"version":3,"file":"js/app~eb2fbf4c.78d74dbf.js","mappings":"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","sources":["webpack://app/../../node_modules/@superthread-com/localization/languages/en/index.js","webpack://app/../../node_modules/tiny-emitter/index.js","webpack://app/../src/constants.ts","webpack://app/../src/utils.ts","webpack://app/../src/dom-utils.ts","webpack://app/../src/bindGlobalEventListeners.ts","webpack://app/../src/browser.ts","webpack://app/../src/props.ts","webpack://app/../src/template.ts","webpack://app/../src/createTippy.ts","webpack://app/../src/index.ts","webpack://app/../src/addons/createSingleton.ts","webpack://app/../src/plugins/followCursor.ts","webpack://app/../build/base.js","webpack://app/../../node_modules/@superthread-com/localization/languages/ lazy ^\\.\\/.*\\/index\\.js$ namespace object","webpack://app/../../node_modules/tiny-emitter/instance.js","webpack://app/../../node_modules/@superthread-com/api/index.ts"],"sourcesContent":["// src/en/index.ts\nvar en = {\n // onboarding\n inviteTeamMembersTo: \"Invite team members to your workspace\",\n loggingIn: \"Logging you in\",\n defaultSpaceName: \"General\",\n onboardingSpaceName: \"Welcome 👋\",\n loginCodeSendAgain: \"Send your login code again\",\n loginCodeResent: \"Your login code has been sent again.\",\n loginCodeError: \"Wrong login verification code.\",\n loginCodeErrorSending: \"There was a problem sending your login verification code.\",\n loginCodeErrorExpired: \"Your login verification has expired, we’ve sent you another one.\",\n loginCodeErrorRateLimited: \"You’ve made too many attempts, please try again later.\",\n pickAWorkspaceName: \"Pick a workspace name\",\n creatingWorkspace: \"Creating workspace\",\n createaSpace: \"Create a space\",\n subdomainExists: \"This workspace name is already taken. Please try another.\",\n emailLabel: \"Your email address\",\n passwordLabel: \"Password\",\n checkEmail: \"Check your email\",\n haveSent: \"We’ve sent a \",\n weSentALoginCode: \"We sent a login code to:\",\n sixDigit: \"6 digit login code\",\n sixDigits: \"6 digits\",\n confTo: \"to\",\n checkInbox: \"Please check your inbox.\",\n teamName: \"What’s the name of your team?\",\n workspaceNameLabel: \"Workspace name\",\n workspaceNamePlaceHolder: \"e.g. Acme industries\",\n spaceNameLabel: \"Space name\",\n spaceNamePlaceHolder: \"e.g. web-shop\",\n min3Characters: \"Minimum 3 characters long.\",\n continueWithProvider: \"Continue with %{provider}\",\n welcomeToSuperThread: \"Welcome to Superthread\",\n aWorkspaceIs: \"A workspace is usually named after your organisation. You cannot change this name later.\",\n youCanChangeThis: \"You can change this later and create as many spaces as you like.\",\n LoginCode: \"Login code\",\n enterLoginCode: \"Enter login code\",\n continueWithEmail: \"Continue with Email\",\n registerProvider: \"Register with %{provider}\",\n onboardingEmailPlaceholder: \"you@example.com\",\n // cards\n cardsLayoutList: \"List\",\n cardsLayoutBoard: \"Board\",\n cardsLayoutTimeline: \"Timeline\",\n cardsLayoutCalendar: \"Calendar (Beta)\",\n // Group titles\n [\"slash.group.media\"]: \"Media\",\n [\"slash.group.basic\"]: \"Basic\",\n [\"slash.group.inline\"]: \"Inline\",\n [\"slash.group.embed\"]: \"Embed\",\n // Keywords\n [\"slash.keyword.media\"]: \"attach,image,file,upload,media,attachment\",\n // Commands\n // slashCommands\n [\"slash.display.attach\"]: \"Attach\",\n [\"slash.search.attach\"]: \"attach\",\n \"slash.display.image\": \"Image\",\n \"slash.display.youtube\": \"Embed YouTube video\",\n \"slash.display.checklist\": \"Checklist\",\n \"slash.display.table\": \"Table\",\n \"slash.display.h1\": \"H1\",\n \"slash.display.h2\": \"H2\",\n \"slash.display.h3\": \"H3\",\n \"slash.display.bulleted\": \"Bulleted list\",\n \"slash.display.numbered\": \"Numbered list\",\n \"slash.display.blockquote\": \"Blockquote\",\n \"slash.display.hr\": \"Horizontal rule\",\n \"slash.display.card\": \"Card\",\n \"slash.display.mention\": \"Mention\",\n \"slash.display.codeBlock\": \"Code block\",\n \"slash.display.board\": \"Board\",\n \"slash.display.callout\": \"Callout\",\n \"slash.search.image\": \"image\",\n \"slash.search.youtube\": \"youtube video\",\n \"slash.search.checklist\": \"checklist\",\n \"slash.search.table\": \"table\",\n \"slash.search.h1\": \"h1\",\n \"slash.search.h2\": \"h2\",\n \"slash.search.h3\": \"h3\",\n \"slash.search.bulleted\": \"bulleted list\",\n \"slash.search.numbered\": \"numbered list\",\n \"slash.search.blockquote\": \"blockquote\",\n \"slash.search.hr\": \"horizontal rule\",\n \"slash.search.card\": \"card\",\n \"slash.search.mention\": \"mention\",\n \"slash.search.codeBlock\": \"code block\",\n \"slash.search.embed\": \"embed board\",\n // menus\n \"menu.add-column-before\": \"Add column before\",\n \"menu.add-column-after\": \"Add column after\",\n \"menu.add-row-before\": \"Add row before\",\n \"menu.add-row-after\": \"Add row after\",\n \"menu.merge-cells\": \"Toggle merge cells\",\n \"menu.toggle-header-row\": \"Toggle header row\",\n \"menu.delete-column\": \"Delete column\",\n \"menu.delete-row\": \"Delete row\",\n \"menu.delete-table\": \"Delete table\",\n \"menu.toggle-expand-to-page-size\": \"Toggle full width\",\n \"menu.add-comment\": \"Add comment\",\n \"menu.heading\": \"Heading %{level}\",\n \"menu.bold\": \"Bold\",\n \"menu.italic\": \"Italic\",\n \"menu.strikethrough\": \"Strikethrough\",\n \"menu.underline\": \"Underline\",\n \"menu.check-list\": \"Checklist\",\n \"menu.bullet-list\": \"Bullet list\",\n \"menu.ordered-list\": \"Ordered list\",\n \"menu.horizontal-rule\": \"Horizontal rule\",\n \"menu.link\": \"Link\",\n \"menu.quick-card\": \"Quick card\",\n \"menu.blockquote\": \"Block quote\",\n \"menu.codeblock\": \"Code block\",\n \"menu.code\": \"Inline code\",\n \"menu.undo\": \"Undo\",\n \"menu.redo\": \"Redo\",\n \"menu.table-cell-color\": \"Cell color\",\n \"menu.clear-table-cell-color\": \"Clear cell color\",\n \"menu.align-left\": \"Align left\",\n \"menu.align-center\": \"Align center\",\n \"menu.align-right\": \"Align right\",\n \"menu.align-justify\": \"Align justify\",\n \"editor.clickToDownload\": \"Click to download\",\n \"editor.loading\": \"Loading\",\n \"editor.characterLimitReachedTryFile\": \"Character limit reached. For larger content, you can attach files.\",\n \"editor.uploading\": \"Uploading\",\n \"editor.genericFileError\": \"Your file could not be uploaded.\",\n // billing\n [\"billing.unlimitedMembers\"]: \"Unlimited team members\",\n [\"billing.unlimitedSpaces\"]: \"Unlimited spaces\",\n [\"billing.unlimitedBoards\"]: \"Unlimited boards\",\n [\"billing.unlimitedCardsAndPages\"]: \"Unlimited cards and pages\",\n [\"billing.unlimitedViews\"]: \"Unlimited views\",\n [\"billing.category.workspaceMembers\"]: \"Workspace members\",\n [\"billing.category.spaces\"]: \"Spaces\",\n [\"billing.category.boards\"]: \"Boards\",\n [\"billing.category.cardsAndPages\"]: \"Cards and pages\",\n [\"billing.category.views\"]: \"Views\",\n [\"billing.category.fileSize\"]: \"File size\",\n [\"billing.category.privateSpaces\"]: \"Private spaces\",\n [\"billing.category.userPermissions\"]: \"User permissions\",\n [\"billing.category.guestAccounts\"]: \"Guest accounts\",\n [\"billing.noPrivateSpaces\"]: \"No private spaces\",\n [\"billing.everyoneIsAdmin\"]: \"Everyone is admin\",\n [\"billing.noGuestAccounts\"]: \"No guest accounts\",\n [\"billing.5mbFileSizeLimit\"]: \"5MB file size limit\",\n [\"billing.noFileSizeLimit\"]: \"No file size limit\",\n [\"billing.unlimitedPrivateSpaces\"]: \"Unlimited private spaces\",\n [\"billing.2Spaces\"]: \"2 spaces\",\n [\"billing.adminRolesAndPermissions\"]: \"Admin roles & permissions\",\n [\"billing.unlimitedCards\"]: \"Unlimited cards\",\n [\"billing.sharePagesOnTheWeb\"]: \"Share pages on the web\",\n [\"billing.50Pages\"]: \"50 pages\",\n [\"billing.unlimitedPages\"]: \"Unlimited pages\",\n [\"billing.indexPublishedPages\"]: \"Index published pages in search engines\",\n [\"billing.privateSpaces\"]: \"Private spaces\",\n [\"billing.timelineListAndBoardView\"]: \"Timeline, list, & board view\",\n [\"billing.guestAccounts\"]: \"Guest accounts\",\n [\"billing.monthly\"]: \"Monthly\",\n [\"billing.yearly\"]: \"Yearly (-20%)\",\n [\"billing.currentPlan\"]: \"Current plan\",\n [\"billing.yourChosenPaymentMethodIs\"]: \"Your chosen payment method is %{method}\",\n [\"billing.thisIsThePaymentMethod\"]: \"This is the payment method we will use for future payments. You can change it at any time.\",\n [\"billing.billing\"]: \"Billing\",\n [\"billing.planAndBilling\"]: \"Plan and Billing\",\n [\"billing.paymentMethod\"]: \"Payment method\",\n [\"billing.cardEndingIn\"]: \"%{cardType} ending in %{last4}\",\n [\"billing.manageBillingDetails\"]: \"Manage billing details\",\n [\"billing.viewBillingDetails\"]: \"View billing details\",\n [\"billing.updatePaymentDetails\"]: \"Update payment details\",\n [\"billing.sendNewInvoicesTo\"]: \"Send new invoices to\",\n [\"billing.previousInvoices\"]: \"Previous invoices\",\n [\"billing.plan\"]: \"Plan\",\n [\"billing.manageWhichPlan\"]: \"Manage which plan the workspace uses\",\n [\"billing.standard\"]: \"Standard\",\n [\"billing.changePlan\"]: \"Change plan\",\n [\"billing.free\"]: \"Free\",\n [\"billing.upgrade\"]: \"Upgrade\",\n [\"billing.noPaymentMethod\"]: \"No payment method\",\n [\"billing.thereIsNoPaymentMethod\"]: \"There is no payment method associated with this workspace. A payment method will appear here once you’ve selected a paid plan.\",\n [\"billing.selectAPaidPlan\"]: \"Select a paid plan\",\n [\"billing.upgradePlan\"]: \"Upgrade to this plan\",\n [\"billing.downgradePlan\"]: \"Downgrade to this plan\",\n [\"billing.downgradeToFree\"]: \"Downgrade to free\",\n [\"billing.viewYourPaymentMethodInStripe\"]: \"View your payment method in Stripe\",\n [\"billing.weBillTheWorkspacePayment\"]: \"We bill the workspace payment method when an invitation is accepted.\",\n [\"billing.checkThePlanPanel\"]: \"Check the plan panel for a per-seat cost estimate.\",\n [\"billing.12\"]: \"$12\",\n [\"billing.10\"]: \"$10\",\n [\"billing.perUserPerMonth\"]: \"/ user / month\",\n [\"billing.billedYearly\"]: \"billed yearly\",\n [\"billing.planStatus\"]: \"Plan status\",\n [\"billing.yourCurrentPlanIsNotSetToRenew\"]: \"Your current plan is not set to renew\",\n [\"billing.on\"]: \"On\",\n [\"billing.dateYourWorkspaceWillDowngrade\"]: \"your workspace will downgrade to the Free plan. Until then you can still invite people to this workspace, but you will not be able to exceed\",\n [\"billing.workspaceMembers\"]: \"workspace members\",\n [\"billing.turnRenewalBackOn\"]: \"Turn renewal back on\",\n [\"billing.youCanStillInvite\"]: \"You can still invite people to this workspace, but you cannot exceed\",\n [\"billing.workspaceFullError\"]: \"Workspace member limit reached. A workspace admin can raise it.\",\n [\"billing.genericJoinError\"]: \"Could not join workspace.\",\n [\"billing.startsOn\"]: \"Starts on %{date}\",\n [\"billing.switchToYearly\"]: \"Switch to yearly (-20%)\",\n [\"billing.switchToMonthly\"]: \"Switch to monthly\",\n [\"billing.metadata\"]: \"Everything in %{plan}, plus...\",\n [\"billing.talkToOurExperts\"]: \"Talk to our experts\",\n [\"billing.samlAndScim\"]: \"SAML & SCIM\",\n [\"billing.auditLogs\"]: \"Audit logs\",\n [\"billing.customBilling\"]: \"Custom billing\",\n [\"billing.prioritySupport\"]: \"Priority support\",\n [\"billing.unlimitedChildCards\"]: \"Unlimited child cards\",\n [\"billing.publishPagesToTheWeb\"]: \"Publish pages to the web\",\n [\"billing.calendarLayout\"]: \"Calendar layout\",\n [\"billing.advancedSearch\"]: \"Advanced search\",\n [\"billing.views\"]: \"Views\",\n [\"billing.timelineLayout\"]: \"Timeline layout\",\n [\"billing.liveChatSupport\"]: \"Live chat support\",\n [\"billing.guestsUsersAreFree\"]: \"Guest users are free on your current plan.\",\n [\"billing.newMembersAreBilledProRata\"]: \"New members are billed pro-rata for the remainder of your annual billing cycle.\",\n [\"billing.workspacePaymentMethodWillBeCharged\"]: \"The workspace payment method will be charged at the end of the month in which they join.\",\n [\"billing.learnModeAboutBilling\"]: \"Learn more about billing\",\n [\"billing.guestViewOnly\"]: \"Guest – view only\",\n // global\n [\"global.text.create\"]: \"Create\",\n [\"option.label.cards\"]: \"Cards\",\n [\"option.label.pages\"]: \"Pages\",\n [\"option.label.boards\"]: \"Boards\",\n [\"option.label.epics\"]: \"Projects\",\n [\"option.label.spaces\"]: \"Spaces\",\n [\"option.label.showArchived\"]: \"Show archived\",\n [\"search.message.noResults\"]: \"Not found\",\n [\"global.text.discardDraft\"]: \"Discard draft\",\n switchAccount: \"Switch account\",\n all: \"All\",\n search: \"Search\",\n searchPlaceholder: \"Search or ask a question...\",\n close: \"Close\",\n send: \"Send\",\n resendInviteLink: \"Resend invite link\",\n addComment: \"Add a comment\",\n comment: \"Comment\",\n replyToComment: \"Reply to comment...\",\n writeComment: \"Write a comment...\",\n comments: \"Comments\",\n createBoard: \"Create board\",\n createPage: \"Create page\",\n delete: \"Delete\",\n edit: \"Edit\",\n remove: \"Remove\",\n done: \"Done\",\n cancel: \"Cancel\",\n cancelAndDiscard: \"Cancel and discard\",\n enterBoardTitle: \"Board title\",\n create: \"Create\",\n join: \"Join\",\n couldntJoinSpace: \"Could not join space, try again later.\",\n untitled: \"Untitled\",\n containsNoContent: \"Contains no content.\",\n ama: \"AMA\",\n me: \"Me\",\n assigned: \"Assigned\",\n mentions: \"Mentions\",\n visited: \"Visited\",\n saved: \"Saved\",\n notifications: \"Notifications\",\n selectWhereWwhenWillNotified: \"Choose how you want to be notified\",\n recivePersonalNotification: \"Receive personal notifications in Slack\",\n notifyMe: \"Notify me when\",\n save: \"Save\",\n saveChanges: \"Save changes\",\n archived: \"Archived\",\n archive: \"Archive\",\n watch: \"Watch\",\n unwatch: \"Unwatch\",\n cardArchived: \"Card is archived.\",\n cardArchivedByCard: \"Card is archived.\",\n cardArchivedByList: \"Card is part of an archived list. Move to active list to restore.\",\n cardArchivedByBoard: \"Card is part of an archived board. Move to active board to restore.\",\n epicArchived: \"Project is archived.\",\n epicArchivedByEpic: \"Project is archived.\",\n epicArchivedByList: \"Project is part of an archived list. Move to active list to restore.\",\n boardArchived: \"Board is archived.\",\n isArchived: \"is archived\",\n pageArchived: \"Page is archived.\",\n cellMerge: \"Cell Merge\",\n new: \"New\",\n view: \"View\",\n project: \"space\",\n spaces: \"Spaces\",\n teamId: \"team id\",\n deleteCommentPopupMessage: \"Are you sure you want to delete this comment?\",\n deleteMessage: \"Delete comment\",\n archiveResource: \"Archive %{type}\",\n restoreResource: \"Restore %{type}\",\n deleteResource: \"Delete %{type}\",\n deleteSuccess: \"%{name} %{type} is deleted\",\n archiveSuccess: \"%{name} %{type} is archived\",\n restoreSuccess: \"%{name} %{type} is restored\",\n deleteError: \"Couldn’t delete %{name} %{type}\",\n archiveError: \"Couldn’t archive %{name} %{type}\",\n restoreError: \"Couldn’t restore %{name} %{type}\",\n addLink: \"Add link\",\n couldntDeleteComment: \"Could not delete comment, please try again\",\n couldntLoadComments: \"Could not load comments.\",\n commentOnPage: \"Comment on page\",\n emailPlaceholder: \"e.g. you@example.com\",\n signOut: \"Sign Out\",\n leave: \"Leave\",\n browseAllSpaces: \"Browse All Spaces\",\n preview: \"Preview\",\n goToCard: \"Go to card\",\n zoomIn: \"Zoom in\",\n zoomOut: \"Zoom out\",\n notFoundPageHeader: \"There’s been a glitch...\",\n notFoundPageContent: \"We’re not quite sure what went wrong. You can go back, or try looking on our Help Center if you need a hand.\",\n addCard: \"Add card\",\n addProject: \"Add project\",\n next: \"Next\",\n addToCard: \"Add to card\",\n checklist: \"Checklist\",\n moveList: \"Move list\",\n board: \"Board\",\n timeline: \"Timeline\",\n templates: \"Templates\",\n cardTemplates: \"Card templates\",\n pageTemplates: \"Page templates\",\n saveCardContentYouRepeatedlyUse: \"Save content you repeatedly use and apply it when you create cards\",\n savePageContentYouRepeatedlyUse: \"Save content you repeatedly use and apply it when you create pages\",\n createCardTemplate: \"Create card template\",\n editCardTemplate: \"Edit card template\",\n searchTemplates: \"Search templates\",\n name: \"Name\",\n noCardTemplates: \"No card templates\",\n noPageTemplates: \"No page templates\",\n calendar: \"Calendar\",\n showAllCards: \"Show all cards\",\n hideAllCards: \"Hide all cards\",\n showWeekends: \"Show weekends\",\n youCanCreateATemplateAbove: \"You can create a template above\",\n youCanCreateABoardFrom: \"You can create a board from the app sidebar\",\n createPageTemplate: \"Create page template\",\n editPageTemplate: \"Edit page template\",\n templateNameAndIcon: \"Template name and icon\",\n thisIsHowPeopleFindTemplate: \"This is how people will find your template later\",\n shortAndDescriptive: \"Short and descriptive\",\n templateNameCannotBeEmpty: \"Template name cannot be empty\",\n templateSpace: \"Template space(s)\",\n whichSpacesWillThisTemplateBeAvailableIn: \"Which spaces will this template be available in?\",\n templateSpaceShouldHaveAtLeastOneSpaceSelected: \"Template space should have at least one space selected\",\n noSpacesFound: \"No spaces found.\",\n allSpaces: \"All spaces\",\n peopleWillBeAbleToEditThisAfterTheyApplyTheTemplate: \"People will be able to edit this after they apply the template\",\n theseWillBeAddedToTheCardYouApplyTheTemplateTo: \"These will be added to the card you apply the template to\",\n taskDescription: \"Card description\",\n pageBody: \"Page body\",\n saveTemplate: \"Save template\",\n templateNotFound: \"Template not found\",\n addAssignees: \"Add assignees\",\n removeAssignees: \"Remove assignees\",\n changeAssignees: \"Change assignees\",\n setTags: \"Set tags\",\n selectAll: \"Select all\",\n createInThisBoard: \"Create in this board\",\n setThisStatus: \"Set this status\",\n chooseABoard: \"Choose a board\",\n chooseABoardToUseThisField: \"Choose a board to use this field\",\n ifYouLeaveThisPageAnyChangesWillBeLost: \"If you leave this page, any changes you’ve made to this template will be lost.\",\n uploadFailedClickToRetry: \"Upload failed, click to retry\",\n areYouSureYouWantToDeleteTheTemplate: 'Are you sure you want to delete the \"%{templateName}\" template?',\n applyTemplate: \"Apply template\",\n noTemplates: \"No templates.\",\n manageTemplates: \"Manage templates\",\n uploadFilesForTemplatesIsDisabled: \"File uploads are disabled in templates\",\n uploadFilesIsDisabled: \"File uploads are disabled\",\n noTagsFoundSelectBoardToSeeTags: \"No tags found. Select a board to see tags available in that space, or\",\n createNewWorkspaceTagInSettings: \"create a new workspace tag in settings.\",\n noTitle: \"No title\",\n addChecklist: \"Add checklist\",\n title: \"Title\",\n add: \"Add\",\n addItem: \"Add new item\",\n archiveList: \"Archive list\",\n actions: \"Actions\",\n reply: \"Reply...\",\n replies: \"Replies\",\n description: \"Description\",\n cardDescriptionPlaceholder: \"Write a description...\",\n templateDescriptionPlaceholder: \"Enter a description...\",\n card: \"Card\",\n space: \"Space\",\n page: \"Page\",\n workspaceLabel: \"Enter workspace name\",\n workspacePlaceholder: \"Workspace name\",\n roboto: \"Roboto\",\n sansserif: \"Sans Serif\",\n serif: \"Serif\",\n mono: \"Mono\",\n monospace: \"Monospace\",\n download: \"Download\",\n move: \"Move\",\n background: \"Background\",\n share: \"Share\",\n upload: \"Upload\",\n paste_image_link: \"Paste image link\",\n embed_image: \"Embed image\",\n drag_and_drop: \"Drag and drop\",\n supported_files: \"Supported files\",\n maximum_size: \"Maximum size\",\n createNewPage: \"Create new page\",\n createNewBoard: \"Create new board\",\n newPage: \"New page\",\n addNewPage: \"Add new page\",\n newBoard: \"New board\",\n addNewBoard: \"Add new board\",\n oneColumn: \"1 column\",\n twoColumns: \"2 columns\",\n previewStillUpdating: \"Preview still updating...\",\n emptyPage: \"Empty page\",\n searchSuperthread: \"Search Superthread\",\n attachFrom: \"Attach from...\",\n searchUnsplash: \"Search Unsplash\",\n fullWidth: \"Full width\",\n largeText: \"Large text\",\n space___: \"Space...\",\n cannotExcludeAll: \"Cannot exclude all\",\n mustIncludeAtLeastOne: \"Must include at least one\",\n type: \"Type\",\n noResultsFound: \"No results found\",\n cardStatus: \"Card status\",\n makeItPrivate: \"Make it private\",\n thisSpaceIsPrivate: \"This space is private\",\n privateSpaceDescription: \"When a space is set to private, it can only be joined by invitation.\",\n boards: \"Boards\",\n boardsCount_one: \"%{count} board\",\n boardsCount_other: \"%{count} boards\",\n cardsCount_one: \"%{count} card\",\n cardsCount_other: \"%{count} cards\",\n from: \"from\",\n hiddenMember: \"Hidden member\",\n hiddenMemberDesc: \"This person does not share any spaces with you\",\n linkTextLabel: \"Text\",\n linkUrlLabel: \"Link\",\n linkTextPlaceholder: \"Add text...\",\n linkUrlPlaceholder: \"Add link...\",\n editList: \"Edit list\",\n copyList: \"Copy List\",\n sortBy: \"Sort by\",\n moveAllCards: \"Move all cards\",\n archiveAllCards: \"Archive all cards\",\n enterResourceTitle: \"Enter %{type} title...\",\n open: \"Open\",\n openCardInBoard: \"Open card in board\",\n editTitle: \"Edit title\",\n editTags: \"Edit tags\",\n editMembers: \"Edit members\",\n copy: \"Copy\",\n attachment: \"Attachment\",\n startDate: \"Start date\",\n dueDate: \"Due date\",\n cover: \"Cover\",\n tags: \"Tags\",\n activity: \"Activity\",\n created: \"Created\",\n updated: \"Updated\",\n reload: \"Reload\",\n timePeriod: \"Time period\",\n cardsAdded: \"Cards added\",\n cardsFinished: \"Cards finished\",\n netChange: \"Net change\",\n last7Days: \"Last 7 days\",\n last14Days: \"Last 14 days\",\n last30Days: \"Last 30 days\",\n cardsAddedBetween: \"Unique cards added between\",\n cardsAddedTo: \"Unique cards added to\",\n between: \"between\",\n deletedCards: \"Deleted cards reduce the count\",\n moreCardsAddedThanFinished: \"%{number} more cards were added than finished\",\n sameNumberOfCardsAddedAndFinished: \"The same number of cards were added and finished\",\n moreCardsFinishedThanAdded: \"%{number} more cards were finished than added\",\n oneMoreCardAddedThanFinished: \"1 more card was added than finished\",\n oneMoreCardFinishedThanAdded: \"1 more card was finished than added\",\n convertToCard: \"Convert to card\",\n searchForTag: \"Search for tag\",\n createTag: \"Create tag\",\n tagName: \"Tag name\",\n editTagName: \"Edit tag name\",\n hideCheckedItems: \"Hide checked items\",\n showCheckedItems: \"Show checked items\",\n deleteChecklist: \"Delete checklist\",\n attachments: \"Attachments\",\n versionHistory: \"Version History\",\n profile: \"Profile\",\n settings: \"Settings\",\n email: \"Email\",\n firstNamePlaceholder: \"Enter first name\",\n lastNamePlaceholder: \"Enter last name\",\n displayNamePlaceholder: \"Enter display name\",\n profileBasicInfoSubtitle: \"Personal and contact info\",\n uploadProfileImageRule: \"Image should be PNG, GIF or JPG format no larger than 3MB. This will be shown as your avatar across the app.\",\n workspaceLogo: \"Pick a workspace logo. Recommended size is 256x256px\",\n logoSaved: \"Logo saved\",\n logoRemoved: \"Logo removed\",\n removeCover: \"Remove cover\",\n uploadCoverImage: \"Upload cover image\",\n list: \"List\",\n addChildCard: \"Add child card\",\n searchForCard: \"Search for existing card\",\n newChildCard: \"Create new child card\",\n cancelSearch: \"Cancel search\",\n computer: \"Computer\",\n setDueDate: \"Set due date\",\n months: \"January,February,March,April,May,June,July,August,September,October,November,December\",\n monthsAbbreviation: \"Jan,Feb,Mar,Apr,May,Jun,Jul,Aug,Sep,Oct,Nov,Dec\",\n daysAbbreviation: \"MO,TU,WE,TH,FR,SA,SU\",\n daysAbbreviationLong: \"Mon,Tue,Wed,Thu,Fri,Sat,Sun\",\n weekDays: \"Monday,Tuesday,Wednesday,Thursday,Friday,Saturday,Sunday\",\n time: \"Time\",\n dueDateReminder: \"Due date reminder\",\n weekBefore: \"Week before\",\n daysBefore: \"Days before\",\n dayBefore: \"Day before\",\n hoursBefore: \"Hours before\",\n hourBefore: \"Hour before\",\n onTime: \"On time\",\n none: \"None\",\n due: \"Due\",\n insertFile: \"Insert file\",\n addImage: \"Add image\",\n edited: \"edited\",\n insert: \"Insert\",\n overdue: \"Overdue\",\n continue: \"Continue\",\n createdBy: \"Created by\",\n press: \"Press\",\n toClose: \"to close\",\n cards: \"Cards\",\n on: \"on\",\n useArrowKeys: \"Use arrow keys\",\n toNavigate: \"to navigate, select with\",\n sending: \"Sending invite link..\",\n inviteDoesntExist: \"Invite link doesn’t exist.\",\n couldntResendLink: \"Couldn’t resend the invite link.\",\n newInviteLinkSent: \"We sent you a new invite link, please check your email.\",\n inviteLinkAccepted: \"Invite link already accepted.\",\n inviteNoLongerValid: \"Invite link is no longer valid. Please request a new invite link.\",\n inviteCodeIncorrect: \"Incorrect invite link. Click below to resend.\",\n thereAreNoFreeSeatsForThisWorkspace: \"There are no free seats for this workspace\",\n thisWorkspaceCantAcceptAnyMoreMembers: \"This workspace cannot accept any more members. A workspace admin can raise the limit, or an existing member can leave the workspace to open a seat.\",\n spaceAccess: \"Space access\",\n changeToPrivateSpace: \"All existing members of this space will still be members after it is made private. No new members will be able to join unless they are invited.\",\n changeToOpenSpace: \"All members of the workspace will be able to find and join this space, and see its contents.\",\n changeToPrivate: \"Change to private\",\n changeToOpen: \"Change to open\",\n changeToPrivateSpaceTitle: \"Change to private space?\",\n changeToOpenSpaceTitle: \"Change to open space?\",\n ownersAdminsCreatorOfSpace: \"Only workspace owners, admins, and the creator of the space can change this setting\",\n member: \"Member\",\n notMember: \"Not a member\",\n links: \"Links\",\n createNewView: \"Create view\",\n newView: \"New view\",\n workspace: \"Workspace\",\n views: \"Views\",\n roadmap: \"Roadmap\",\n myViews: \"My views\",\n workspaceViews: \"Workspace views\",\n private: \"Private\",\n lastUpdate: \"Last update\",\n viewType: \"View type\",\n filters: \"Filters\",\n filter___: \"Filter...\",\n filters___: \"Filters...\",\n filterBy: \"Filter by\",\n filter: \"Filter\",\n content: \"content\",\n status: \"Status\",\n subscriber: \"subscriber\",\n creator: \"creator\",\n tag: \"Tag\",\n subscribers: \"subscribers\",\n creators: \"creators\",\n shareWithWorkspace: \"Share with workspace\",\n discard: \"Discard\",\n pageTitlePlaceholder: \"Untitled page\",\n markAllAsRead: \"Mark all as read\",\n addTo: \"Added to\",\n removeFrom: \"Removed from\",\n movedTo: \"%{name} moved\",\n notificationCreated: \"%{name} created\",\n notificationAdded: \"%{name} added\",\n commented: \"Commented\",\n mentioned: \"Mentioned\",\n dropFilesLabel: \"Drag and drop files here\",\n back: \"Back\",\n typeContent: \"Type a content\",\n hasDueDate: \"Has due date\",\n dueSoon: \"Due soon\",\n dueToday: \"Due today\",\n epic: \"Project\",\n epics: \"Projects\",\n searchForEpic: \"Search for project\",\n changedEpicFrom: \"changed project from\",\n addedToEpicCard: \"added this card to project\",\n removedFromEpicCard: \"removed this card from project\",\n epicInherited: \"Project inherited from parent card\",\n untitledView: \"Untitled view\",\n cannotSaveUntitledView: \"Cannot save untitled view\",\n viewSaved: \"view saved\",\n pagePlaceholder: \"Write something...\",\n newViewTitele: \"New view title\",\n [\"global.placeholder.pagePlaceholder\"]: \"Write something...\",\n [\"global.placeholder.focusedStatePlaceholder\"]: \"@ to mention anything, / for commands...\",\n [\"global.placeholder.focusedStatePlaceholderMobile\"]: \"@ to mention, / for commands...\",\n checkListItemPlaceholder: \"@ to mention anything...\",\n viewAll: \"View all\",\n filterByUnread: \"Filter by unread\",\n pagePublished: \"Page published\",\n restore: \"Restore\",\n cardPathArchivedBoard: \"This card is in an archived board\",\n restoreMakeChange: \"Click here to restore\",\n boardUpdated: \"Board updated\",\n defaultBoardLayoutChangedTo: \"Default layout changed to %{layoutStyle}\",\n esc: \"Esc\",\n assignee: \"Assignee\",\n assignees: \"Assignees\",\n no_assignee: \"No assignee\",\n findMembers: \"Find members...\",\n inviteExternalPeople: \"Invite external people\",\n notInThisSpace: \"Not in this space\",\n inThisSpace: \"In this space\",\n notWorkspaceMember: \"That person isn’t a member of this workspace yet\",\n anchorLinkErrorMessage: \"Couldn’t find that link\",\n childCard: \"Child card\",\n parentCards: \"Parent cards\",\n blocking: \"Blocking\",\n blocked: \"Blocked\",\n favourites: \"Favourites\",\n dragOr: \"Drag or\",\n somethingHere: \"something here\",\n linkCopiedToClipboard: \"Link copied to clipboard.\",\n tomorrow: \"Tomorrow\",\n invitationsSent: \"Invitations sent.\",\n invitationsFailed: \"Invitations failed.\",\n retry: \"Retry\",\n undo: \"Undo\",\n boardMovedToSpace: \"Board moved to space\",\n pageMovedToSpace: \"Page moved to space\",\n boardNotMoved: \"Board move cancelled.\",\n pageNotMoved: \"Page move cancelled.\",\n newTag: \"New tag\",\n tagExists: \"Tag already exists\",\n toggleSection: \"Toggle section\",\n toggleContent: \"Empty section. Click to write or copy content here.\",\n removeChildCardFail: \"Failed to remove child card\",\n moveChildCardFail: \"Failed to move child card\",\n addChildCardFail: \"Failed to add child card\",\n cantRemoveMembers: \"You can’t remove members from the default space\",\n cantRemoveMembersFromSpace: \"You can’t remove members from this space\",\n cannotModifyMembers: \"You don’t have permission to change members\",\n inactiveMembersCannotBeAdded: \"Inactive members cannot be added to spaces\",\n duplicate: \"Duplicate\",\n setParentCard: \"Set parent card\",\n duplicateCard: \"Duplicate card\",\n duplicateBoard: \"Duplicate board\",\n duplicateBoardDescription: \"Any cards in this board will not be duplicated. Choose a space and name for the duplicated board.\",\n duplicateTo: \"Duplicate to\",\n duplicateDefaultTitle: \"Enter new title (defaults to original)\",\n duplicates: \"Duplicates\",\n duplicateOf: \"Duplicate of\",\n markAsBlockedBy: \"Mark as blocked by\",\n markAsBlocking: \"Mark as blocking\",\n markAsRelatedTo: \"Mark as related to\",\n markAsDuplicateOf: \"Mark as duplicate of\",\n blocks: \"Blocks\",\n blockedBy: \"Blocked by\",\n related: \"Related\",\n relatedEpics: \"Related projects\",\n markedEpicAsBlocking: \"marked this project as blocking\",\n markedEpicAsBlockedBy: \"marked this project as blocked by\",\n markedEpicAsRelated: \"marked this project as related to\",\n markedEpicAsDuplicate: \"marked this project as a duplicate of\",\n relatedCards: \"Related cards\",\n markedCardAsBlocking: \"marked this card as blocking\",\n markedCardAsBlockedBy: \"marked this card as blocked by\",\n markedCardAsRelated: \"marked this card as related to\",\n markedCardAsDuplicate: \"marked this card as a duplicate of\",\n removedCardRelationship: \"removed relationship\",\n noListsInBoard: \"No lists in board\",\n noBoardsInSpace: \"No boards in space\",\n noBoardsInThisSpace: \"No boards in this space\",\n emptyList: \"Empty list\",\n cardDuplicated: \"Card duplicated\",\n boardDuplicated: \"Board duplicated\",\n viewDuplicated: \"View duplicated\",\n viewDeleted: \"View deleted\",\n cardDuplicateFailed: \"Failed to duplicate card\",\n boardDuplicateFailed: \"Failed to duplicate board\",\n viewDuplicateFailed: \"Failed to duplicate view\",\n cantUndoneAction: \"This action can’t be undone.\",\n eachSpaceCanContain: \"Each space can contain as many boards as you like\",\n browseSpaces: \"Browse spaces\",\n popupSpaceDescription: \"Organise work in spaces. They’re usually named after a team, project, or high level objective.\",\n eachSpaceCanContainMultiple: \"Each space can contain multiple \",\n pagesLowercase: \"pages\",\n kanbanBoards: \"kanban boards\",\n and: \"and\",\n removeFromParent: \"Remove from parent\",\n removeChildCard: \"Remove child card\",\n changeCardParent: \"Change card parent\",\n changeParent: \"Change parent\",\n changeParentDescription: \"This card has “%{card_title}” as a parent. Do you want to change the parent to the current card?\",\n editChildCardDetails: \"Edit child card details\",\n copyLink: \"Copy link\",\n childCardTitleNotUpdated: \"Child card title not updated.\",\n addNewChildCard: \"Add new child card\",\n enterCardTitleOrFind: \"Enter card title or find existing cards\",\n createNewCard: \"Create new card\",\n unsplashImage: \"Unsplash image\",\n shareToWeb: \"Share to web\",\n publishesSubpagesButNoComments: \"Publishes subpages, but not comments\",\n pageIsSharedToWeb: \"Page is shared to web\",\n shared: \"Shared\",\n openSharedPage: \"Open shared page\",\n pageIsSetToPrivate: \"Page is set to private\",\n profileSettings: \"Profile settings\",\n switchWorkspace: \"Switch workspace\",\n archivedItems: \"Archived items\",\n logOut: \"Log out\",\n helpFeedback: \"Help & feedback\",\n help: \"Help\",\n joinSlack: \"Join our Slack community\",\n askQuestions: \"Ask questions and help others\",\n contactUs: \"Contact us\",\n letUsKnow: \"Let us know if there’s an issue or a question\",\n assign: \"Assign\",\n unassign: \"Unassign\",\n pageIsNoLongerShared: \"Page is no longer shared to web\",\n favourite: \"Favourite\",\n unfavourite: \"Unfavourite\",\n allowSearchEngines: \"Allow search engines to index this page\",\n searchEngineIndexing: \"Search engine indexing\",\n searchIndexingEnabled: \"Search indexing enabled\",\n searchIndexingDisabled: \"Search indexing disabled\",\n attachIconFrom: \"Attach icon from...\",\n addIcon: \"Add icon\",\n addCoverImage: \"Add cover image\",\n pageDuplicated: \"Page duplicated\",\n pageDuplicateFailed: \"Failed to duplicate page\",\n copyOf: \"Copy of\",\n displayNameDescription: \"This could be your first name, or a nickname. It will be displayed around the app.\",\n embedVideo: \"Embed Youtube video\",\n removePullRequest: \"Remove pull request\",\n viewOnGitHub: \"View on GitHub\",\n setUpGHIntegration: \"Set up GitHub integration\",\n integrateSuperthread: \"Integrate Superthread into your favorite git client.\",\n githubIntegradionDescripiton: \"Link Superthread cards to GitHub pull requests. Include a Superthread card ID (e.g C-123) in your branch name or pull request title to automatically show the PR status in the card.\",\n connectGithub: \"Connect GitHub\",\n connectedAccounts: \"Connected accounts\",\n integrationConnectedToSuperthread: \"%{integrationName} connected to Superthread\",\n enabledBy: \"Enabled by\",\n select: \"Select\",\n integrations: \"Integrations\",\n importer: \"Importer\",\n github: \"GitHub\",\n github_pull_request: \"GitHub\",\n gitlab: \"GitLab\",\n jira: \"Jira\",\n trello: \"Trello\",\n importFrom: \"Import from\",\n selectYour: \"Select your\",\n usersToSuperthreadUsers: \"users to Superthread users\",\n issues: \"issues\",\n teams: \"teams\",\n setUpImport: \"Set up import\",\n importHistory: \"Import history\",\n importBoards: \"Import boards\",\n selectWhichBoards: \"Select which boards from\",\n runImport: \"Run the import\",\n quickImport: \"Quick import\",\n importBoardIntoExsistingSpace: \"Custom import\",\n start: \"Start\",\n started: \"Started\",\n DontImport: \"Don’t import\",\n map: \"Map\",\n dontImportUsers: \"Don’t import users\",\n ImportUsers: \"Import users\",\n importAs: \"Import as...\",\n selectUser: \"Select user\",\n inviteByEmail: \"Invite by email\",\n users: \"Users\",\n options: \"Options\",\n chooseAditionslOptions: \"Choose aditional options\",\n importAttachments: \"Import attachments\",\n includeCardCoverImages: \"Include card cover images\",\n importInProgress: \"Import in progress\",\n importError: \"Import completed with errors\",\n importSuccess: \"Import completed\",\n importUnstarted: \"Import unstarted\",\n timeStarted: \"Time started\",\n completed: \"Completed\",\n showCompleted: \"Show done\",\n details: \"Details\",\n finish: \"Finish\",\n validEmail: \"Please enter a valid email address.\",\n emailAdresses: \"Email addresses, comma separated\",\n person1Email: \"person1@example.com, person2@example.com…\",\n addToSpaces: \"Add to spaces\",\n addSpaces: \"Add spaces\",\n browseProjects: \"Browse all spaces\",\n createAndBrowseSpaces: \"Browse and create spaces\",\n nameIsRequired: \"A name is required\",\n noProjectFound: \"No more spaces to add\",\n memberExplanation: \"Members can browse and join any space in the workspace\",\n adminExplanation: \"Admins have more access to workspace settings\",\n guestExplanation: \"Guests have limited workspace access and only see spaces they’re added to\",\n connect: \"Connect\",\n selectBoardImport: \"Select boards you want to import\",\n selectUsersImport: \"Select users you want to import\",\n notImportArchivedIssues: \"We won’t import archived issues.\",\n importTasksIntoSuperthread: \"Import your existing tasks into Superthread.\",\n connectAccount: \"Connect your account\",\n completedOn: \"Completed on\",\n importedBy: \"Imported by:\",\n timeCreated: \"Time created:\",\n createdDate: \"Created date\",\n updatedDate: \"Updated date\",\n numberOfImportedBoards: \"Number of imported boards:\",\n numberOfImportedUsers: \"Number of imported users:\",\n importingIsFinished: \"Import finished\",\n importing: \"Your import has finished\",\n selectService: \"Select where we should import issues from. We’ll ask for your authentication details so we can access their API. We won’t import any data until you’ve confirmed your choices in the final step.\",\n account: \"Account\",\n importers: \"Importers\",\n general: \"General\",\n manageWorkspaceSettings: \"Manage general workspace settings\",\n dangerZone: \"Danger zone\",\n notOwnerOrAdmin: \"You are not an owner or admin of this workspace\",\n archiveWorkspace: \"Archive workspace\",\n archiveWorkspaceDescription: \"All members will lose access to a workspace if it is archived. Any content shared publicly will still be available.\",\n archiveWorkspaceDescriptionDetail: \"All members will lose access to this workspace. If you want to undo this action, email contact@superthread.com.\",\n deleteWorkspace: \"Delete workspace\",\n deleteWorkspaceDescription: \"All members will lose access to a workspace and its data if it is deleted. This cannot be undone.\",\n deleteWorkspaceDescriptionDetail: \"All members will lose access to this workspace and its data. This cannot be undone.\",\n avatarAppearance: \"Avatar appearance\",\n uploadImage: \"Upload image\",\n successfullySaved: \"Successfully saved\",\n errorSave: \"Your changes could not be saved\",\n copyURL: \"Copy URL\",\n copyUrl: \"Copy URL to clipboard\",\n copyCardUrl: \"Copy card URL to clipboard\",\n copyPageUrl: \"Copy page URL to clipboard\",\n copyBoardUrl: \"Copy board URL to clipboard\",\n copySpaceUrl: \"Copy space URL to clipboard\",\n copyGitBranchNameToClipboard: \"Copy git branch name to clipboard\",\n copyGitBranchName: \"Copy git branch name\",\n branchCopiedToClipboard: \"Git branch name copied to clipboard\",\n subscribe: \"Subscribe\",\n unsubscribe: \"Unsubscribe\",\n pullRequestAutomation: \"Pull request automation\",\n prAutomationDescription: \"Move cards in Superthread when pull requests are updated in GitHub.\",\n whenACardIsLinkedToPR: \"When a card is linked to a pull request\",\n whenPRTargetsTheBranch: \"When the pull request targets the branch\",\n addBranchSpecificAutomation: \"Add branch-specific automation\",\n automationMustHaveBranchName: \"An automation must have a branch name. These rules will be ignored.\",\n addBranchSpecificAutomationErrorAlreadyExists: \"There is already an automation for that branch name. These rules will be ignored.\",\n invalidGitBranchName: \"That is not a valid branch name. These rules will be ignored.\",\n branchSpecificAutomationAdded: \"Branch-specific automation added.\",\n branchSpecificAutomationUpdated: \"Branch-specific automation updated.\",\n branchSpecificAutomationRemoved: \"Branch-specific automation removed.\",\n deleteAutomation: \"Delete automation\",\n deleteThisAutomation: \"Delete this automation\",\n deleteAutomationConfirmation: \"This set of rules will be deleted and cannot be recovered.\",\n whenPRChangesTo: \"When PR changes to\",\n moveCardToList: \"Move card to list\",\n doNotMove: \"Do not move\",\n draftPROpened: \"Draft PR opened\",\n pROpened: \"PR opened\",\n pRReviewRequest: \"PR review request\",\n pRMerged: \"PR merged\",\n pRClosed: \"PR closed\",\n noListInBoard: \"No lists in this board\",\n unassigned: \"Unassigned\",\n viewParentCard: \"View parent card\",\n changeParentCard: \"Change parent card\",\n removeParentCard: \"Remove parent card\",\n goToParentCard: \"Go to parent card\",\n discardAndClose: \"Discard and close\",\n changeStatus: \"Change status\",\n createCardsInSelectedBoard: \"Always create cards in the selected board\",\n createCardIn: \"Create card in\",\n maxFileSize: \"Max. file size: 5MB\",\n addAttachment: \"Add attachment\",\n createChecklist: \"Create checklist\",\n assignedToMe: \"Assigned to me\",\n movedTAaNewList: \"Moved to a new list\",\n moved: \"Moved\",\n published: \"Published\",\n cardComments: \"Card comments\",\n pageComments: \"Page comments (including replies in threads)\",\n movedBetweenSpaces: \"Moved to a different space\",\n addedToASpace: \"Added you to a space\",\n noduedate: \"No due date\",\n [\"now+2d\"]: \"2 days from now\",\n [\"now+3d\"]: \"3 days from now\",\n [\"now+1w\"]: \"1 week from now\",\n [\"now+2w\"]: \"2 weeks from now\",\n [\"now+3w\"]: \"3 weeks from now\",\n [\"now+1M\"]: \"1 month from now\",\n [\"now+2M\"]: \"2 months from now\",\n [\"now+3M\"]: \"3 months from now\",\n [\"now+6M\"]: \"6 months from now\",\n [\"now+1y\"]: \"1 year from now\",\n now: \"Today\",\n nowActivity: \"now\",\n [\"now-1h\"]: \"1 hour ago\",\n [\"now-4h\"]: \"4 hours ago\",\n [\"now-1d\"]: \"Yesterday\",\n [\"now-2d\"]: \"2 days ago\",\n [\"now-3d\"]: \"3 days ago\",\n [\"now-1w\"]: \"1 week ago\",\n [\"now-2w\"]: \"2 weeks ago\",\n [\"now-3w\"]: \"3 weeks ago\",\n [\"now-1M\"]: \"1 month ago\",\n [\"now-2M\"]: \"2 months ago\",\n [\"now-3M\"]: \"3 months ago\",\n [\"now-6M\"]: \"6 months ago\",\n [\"now-1y\"]: \"1 year ago\",\n anywhereYouAreMentioned: \"Anywhere you are mentioned (regardless of subscribed status etc.)\",\n anyCommentsOnResources: \"Any comments on resources you are subscribed to.\",\n ifYouAreMemberOfABoard: \"If you are a member of a board:\",\n manageMembers: \"Manage members\",\n manageWhoHasAccess: \"Manage who has access to this workspace\",\n active: \"Active\",\n suspended: \"Suspended\",\n inviteMembers: \"Invite members\",\n inviteToWorkspace: \"Invite people to the %{workspaceName} workspace\",\n emailAddress: \"Email address\",\n inviteAs: \"Invite as\",\n teamMembers: \"Team members\",\n gitHubConnected: \"GitHub successfully connected\",\n nothingToShow: \"Nothing to show here\",\n findTagsOrCreateNew: \"Find tags or create new\",\n deleteTag: \"Delete tag\",\n addNewBoardOrPage: \"Add new board or page\",\n spaceSettings: \"Space settings\",\n rename: \"Rename\",\n changeIcon: \"Change icon\",\n addToFavorites: \"Add to favourites\",\n removeFromFavorites: \"Remove from favourites\",\n viewmoreassignees: \"View more assignees\",\n noassignee: \"No assignee\",\n currentuser: \"Current user\",\n aPrivateSpace: \"a private space\",\n areYouSureYouWantToRemove: \"Are you sure you want to remove them? They will lose access to this workspace.\",\n areYouSureYouWantToLeave: \"Are you sure you want to leave this workspace? You will need an invite to regain access.\",\n youAreTheOnlyPersonInThisPrivateSpace: \"You are the only person in this private space. If you leave, no-one will be able to access it. If your organisation still needs access, invite someone before you leave.\",\n whenYouLeaveAPrivateSpace: \"When you leave a private space, you’ll no longer be able to see any of its boards or pages. To rejoin, you’ll need to be invited again.\",\n youCanRejoinThePublicSpace: \"You can rejoin the space from the spaces screen.\",\n areYouSureYouWantToRevoke: \"Are you sure you want to revoke their invite to this workspace?\",\n areYouSureYouWantToTransferOwnership: \"Are you sure you want to transfer ownership of this workspace? Only the new owner will be able to undo this.\",\n transferOwnership: \"Transfer ownership\",\n transferSpaceOwnershipConfirmed: \"Space ownership transferred\",\n transferSpaceOwnershipShort: \"You must transfer ownership before you can leave\",\n transferSpaceOwnershipDescription: \"If you make %{name} the owner of this space, you will no longer be the owner and will be changed to a member.\",\n transferSpaceOwnershipBeforeLeaving: \"You must make someone else the owner of this space before you can leave it. Go to the space settings to make someone else the owner.\",\n confirm: \"Confirm\",\n revoke: \"Revoke\",\n notFound: \"Not found\",\n itemNotFound: \"Item not found\",\n urlDoesntLeadAnywhere: \"That URL doesn’t lead anywhere\",\n itemMightBeDeleted: \"The item might have been deleted, or you might not have access\",\n deleteItem: \"Delete %{item}\",\n deleteSpace: \"Delete space\",\n ifYouWantToDeleteSpace: \"If you want to delete this space, type its name below.\",\n ifYouWantToDeleteResource: \"If you want to delete this %{resourceType}, type its name below.\",\n ifYouWantToArchiveResource: \"If you want to archive this %{resourceType}, type its name below.\",\n typeTheNameOfTheSpace: \"Type the name of the space\",\n removeMember: \"Remove member\",\n leaveWorkspace: \"Leave workspace\",\n revokeInvite: \"Revoke invite\",\n invited: \"Invited\",\n pending: \"Pending\",\n admin: \"Admin\",\n owner: \"Owner\",\n guest: \"Guest\",\n inviteSent: \"Invite sent\",\n resendInvite: \"Resend invite\",\n whatsNew: \"What’s new\",\n viewUpdates: \"View updates in our weekly changelog\",\n whenYouCreateTags: \"When you create tags from a card, they’re saved as tags for that space only. Create common tags (e.g. bug) here to make them available in all spaces. If any space-level tags exist with the same name we’ll merge them into the workspace tag.\",\n merge: \"Merge\",\n theSpace: \"The space\",\n haveSameTags: \"have tags with the same name.\",\n doYouWantToMerge: \"Do you want to merge these into the new workspace tag?\",\n tagWithThisNameWorkspace: \"A workspace tag with this name already exists\",\n tagWithThisNameSpace: \"A tag with this name already exists in the space\",\n editTag: \"Edit tag\",\n workspaceTags: \"Workspace Tags\",\n manageTags: \"Manage tags that are shared across all spaces\",\n youCantUndo: \"You can’t undo this action.\",\n merge2spaceTags: \"With the same name into the workspace tag?\",\n areYouSureYouWantToDelete: \"Are you sure you want to delete the “%{resourceTitle}” %{resourceType}?\",\n uploaded: \"Uploaded\",\n cardCreatedInResource: \"Card created in '%{resourceName}' %{resourceType}\",\n [\"global.label.createIn\"]: \"Create in\",\n rememberBoard: \"Remember board\",\n cardTitle: \"Card title\",\n pageTitle: \"Page title\",\n cardDescription: \"Card description...\",\n editAsignees: \"Edit asignees\",\n actionFailed: \"Action failed\",\n thisBoardIsEmpty: \"This board is empty. Please create a list first.\",\n changesAreSavedAuto: \"Changes saved automatically\",\n untitledCard: \"Untitled card\",\n editAssignees: \"Edit assignees\",\n showChildCards: \"Show child cards\",\n hideChildCards: \"Hide child cards\",\n createAndManageSpaces: \"Create and manage spaces\",\n thereAreNoListInBoard: \"There are no lists in board.\",\n pageMovedToParent: \"Page moved to parent\",\n subscribedToResourceUpdates: \"Subscribed to %{name} updates\",\n unsubscribedFromResourceUpdates: \"Unsubscribed from %{name} updates\",\n subscribingToResourceUpdatesFailed: \"Failed to subscribe to %{name} updates\",\n unsubscribingFromResourceUpdatesFailed: \"Failed to unsubscribe from %{name} updates\",\n couldntArchiveCard: \"Couldn’t archive card.\",\n cardRestored: \"Card is restored\",\n dueOn: \"Due on\",\n today: \"Today\",\n yesterday: \"Yesterday\",\n attached: \"attached\",\n removed: \"removed\",\n updatedTheStartDate: \"updated the start date to\",\n setTheStartDate: \"set the start date to\",\n removedStartDate: \"removed start date\",\n updatedTheDueDate: \"updated the due date to\",\n setTheDueDate: \"set the due date to\",\n removedDueDate: \"removed due date\",\n changedStausFrom: \"changed status from\",\n editStatus: \"Edit status\",\n editName: \"Edit name\",\n numberOfCards: \"Number of cards\",\n createdCard: \"created card\",\n createdEpic: \"created project\",\n people: \"people\",\n assignedMember: \"assigned\",\n archivedTheCard: \"archived the card\",\n restoredTheCard: \"restored the card\",\n archivedTheEpic: \"archived the project\",\n restoredTheEpic: \"restored the project\",\n theCardDescription: \"the card description\",\n theCardTitle: \"the card title\",\n theEpicDescription: \"the project description\",\n theEpicTitle: \"the project title\",\n [\"quickPage.title.attachImageFrom\"]: \"Attach image from...\",\n [\"quickPage.title.attachCoverImageFrom\"]: \"Attach cover image from...\",\n chooseWorkspaceToConnectIntegration: \"Choose a workspace to connect with %{integrationName}\",\n connectSuperthreadWith: \"Connect Superthread with %{integrationName}\",\n zapierIntegradionDescripiton: \"Zapier lets you to build custom workflows that connect Superthread with almost any other app: Typeform, Gmail, Intercom, Google Forms, Zendesk, Airtable, Front, and many more.\",\n connectToZapier: \"Connect Zapier to Superthread\",\n zapier: \"Zapier\",\n openZapier: \"Open Zapier\",\n allow: \"Allow\",\n integrationWillHave: \"%{integrationName} will have read and write access to cards, boards, and pages in your workspace.\",\n youMayBeSharing: \"You may be sharing sensitive info with this site or app. You can always see or remove access in your\",\n stSettings: \"Superthread settings\",\n seeIntegration: \"See %{integrationName}’s\",\n privacyPolicy: \"Privacy Policy\",\n termsOfService: \"Terms of Service\",\n makeSureYouTrust: \"Make sure you trust %{integrationName}\",\n integrationIsRequesting: \"%{integrationName} is requesting access to the\",\n previewStInSlack: \"Preview Superthread links in Slack\",\n lookingForSlackNotifications: \"Looking for Slack notifications?\",\n turnThemOnInYour: \"Turn them on in your\",\n notificationsSettings: \"Notifications settings\",\n connectToSlack: \"Connect to Slack to see key information from Superthread cards and pages when links are included in Slack messages.\",\n orLc: \"or\",\n useBoardsToVisualise: \"Use boards to visualise your workflow, track your team’s progress, and plan what to do next. Create multiple boards to keep things organised.\",\n collaborativeDocuments: \"Collaborative documents with text, images, markdown, and inline comments. Take notes, write specs, build a wiki, or share information publicly.\",\n filterAcrossTheEntire: \"Filter across the whole workspace to create a view of all cards assigned to you, or perhaps create a global bugs backlog. Views can be private or shared with your team.\",\n useFiltersToCreate: \"Use filters to create custom views of only the cards you want to see\",\n kanbanBoardsUc: \"Kanban boards\",\n importYourExistingTasksFrom: \"Import your existing tasks from\",\n importTasks: \"Import tasks\",\n leaveSpace: \"Leave space\",\n viewSpace: \"View space\",\n deleted: \"%{name} deleted\",\n leaveNamedSpace: \"Leave %{name} space?\",\n leaveNamedPrivateSpace: \"Leave %{name} private space?\",\n deleteAndLeaveNamedPrivateSpace: \"Delete and leave %{name} private space?\",\n youLeftNamedSpace: \"You left the %{name} space.\",\n youCannotLeaveTheSpace: \"You cannot leave this space\",\n joinSpace: \"Join space\",\n joinThisSpace: \"Join this space\",\n hasUnsupportedFileType: \"has unsupported file type\",\n maxAllowedImageSize: \"Maximum allowed image size is\",\n maxAllowedImageResolution: \"Max. allowed image resolution is\",\n movedFromSpace: \"moved from space\",\n untitledPage: \"Untitled page\",\n hideChildPages: \"Hide subpages\",\n showSubpages: \"Show subpages\",\n addedTo: \"added to\",\n addMembers: \"Add members...\",\n removedFrom: \"removed from\",\n viewMembers: \"View members\",\n enableScrollFocus: \"Show current item in sidebar\",\n copyLinkToHeading: \"Copy link to heading\",\n joined: \"Joined\",\n addOwner: \"Add owner\",\n noOwner: \"No owner\",\n setOwner: \"Set owner\",\n font: \"Font\",\n addNewFolder: \"Create folder\",\n deletedSuccesfully: \"removed from favourites\",\n addedSuccesfully: \"added to favourites\",\n clickToUpdate: \"Click to update\",\n NewVersionAvailable: \"A new version of the app is available\",\n addedChildCard: \"added child card\",\n removedChildCard: \"removed child card\",\n removedChecklist: \"removed checklist\",\n addedChecklist: \"created checklist\",\n addedChecklists: \"created checklists\",\n markedAsIncomplete: \"marked as incomplete\",\n completedChecklistItem: \"completed\",\n addedParentCard: \"added parent card\",\n removedParentCard: \"removed parent card\",\n changedParentCardFrom: \"changed parent card from\",\n deleteFolder: \"Delete folder\",\n renameFolder: \"Rename folder\",\n lockSidebar: \"Keep the sidebar open\",\n hideSidebar: \"Hide sidebar\",\n appearance: \"Appearance\",\n changeHowSuperthreadLooksAndFeels: \"Change how Superthread looks and feels\",\n matchSistemSettings: \"Match system settings\",\n darkMode: \"Dark mode\",\n lightMode: \"Light mode\",\n darkGreyMode: \"Dark grey mode\",\n darkBlueMode: \"Dark blue mode\",\n lightBlueMode: \"Light blue mode\",\n year: \"Year\",\n quarter: \"Quarter\",\n month: \"Month\",\n addNewPageInside: \"Add subpage\",\n addChildPage: \"Add subpage\",\n theme: \"Theme\",\n boardSettings: \"Board settings\",\n reaction: \"Reaction\",\n inbox: \"Inbox\",\n resolve: \"Resolve\",\n unresolved: \"Unresolved\",\n unresolve: \"Unresolve\",\n unresolvedOnly: \"Unresolved only\",\n resolved: \"Resolved\",\n unresolveComment: \"Unresolve comment\",\n resolveComment: \"Resolve comment\",\n commentResolved: \"Comment resolved\",\n commentUnresolved: \"Comment unresolved\",\n resolvedOnly: \"Resolved only\",\n allComments: \"All comments\",\n noUnresolvedComments: \"No unresolved comments\",\n noResolvedComments: \"No resolved comments\",\n noComments: \"No comments\",\n about: \"About\",\n markAsRead: \"Mark as read\",\n markAsUnread: \"Mark as unread\",\n markAllAsResolved: \"Mark all as resolved\",\n showUnresolved: \"Show unresolved\",\n showResolved: \"Show resolved\",\n noNotifications: \"No notifications\",\n noNewNotifications: \"No new notifications\",\n noUnresolvedNotifications: \"No unresolved notifications\",\n youCanShow: \"You can show\",\n notificationsInstead: \"notifications instead\",\n subscribeToGetNotifications: \"Subscribe to something and you’ll be notified of activity\",\n selectANotificationToViewIt: \"Select a notification to view it\",\n youCanMarkANotificationAs: \"You can mark a notification as\",\n unreadOr: \"unread or\",\n resolveIt: \"resolve it\",\n inboxNotificationsAreUnresolved: \"Notifications are unresolved until you resolve them\",\n notificationsAreNew: \"Notifications are new if you haven’t seen them before\",\n wantNotificationsIn: \"Want notifications in\",\n slaskQuestionMarkVisit: \"Slack? Visit\",\n noCardsMatchChosenFilter: \"There are no cards that match the chosen filters\",\n noCardsFound: \"No cards found\",\n boardMoved: \"Board moved\",\n pageMoved: \"Page moved\",\n openPage: \"Open page\",\n hasBeenDeleted: \"has been deleted\",\n deletedResourcePlain: \"This resource has been deleted.\",\n deletedResourceWithName: \"This %{name} has been deleted.\",\n this: \"This\",\n andTheEntire: \"and the entire\",\n reactionsToYourComments: \"Reactions to your comments\",\n youWereRemoved: \"You were removed\",\n fromPrivateSpace: \"from a private space\",\n privateSpaceDesc: \"This space is private so you cannot see its name or contents\",\n privateSpace: \"Private space\",\n everything: \"Everything\",\n taskIsOverdue: \"Task is overdue\",\n endDateIsBeforeStartDate: \"End date is before start date\",\n moveCardIntoBoard: \"Card moved to board\",\n inList: \"in list\",\n searchForParentCard: \"Search for parent card\",\n icons: \"Icons\",\n emojis: \"Emojis\",\n custom: \"Custom\",\n moveToBoard: \"Move to board\",\n previous: \"Previous\",\n manualOrder: \"Manual order\",\n sortedBy: \"Sorted by\",\n toCancelDrag: \"to cancel drag\",\n groupBy: \"Group by\",\n subpageCreated: \"Subpage created\",\n tableOfContents: \"Table of contents\",\n editWorkspaceTagsInSettings: \"Edit workspace tags in settings\",\n sideDocked: \"Side docked\",\n modalOverlay: \"Modal overlay\",\n cardLayout: \"Card layout\",\n switchLayout: \"Switch layout\",\n showSidebar: \"Show sidebar\",\n notags: \"No tags\",\n resetLayoutToBoardDefault: \"Reset layout to board default\",\n alreadyOpen: \"%{resource} already open\",\n defaultBoardLayout: \"Default board layout\",\n defaultBoardLayoutDescription: \"Everyone will see this layout by default. This setting can be changed later.\",\n boardDescription: \"Cards are grouped into columns\",\n listDescription: \"Cards are in a vertical list, split into groups\",\n timelineDescription: \"A timeline based on start and due dates\",\n calendarDescription: \"Cards are placed on their due date\",\n boardName: \"Board name\",\n memberRemoved: \"Member removed\",\n resetLayoutToViewDefault: \"Reset order to default\",\n earliestDueDate: \"Earliest due date\",\n highestPriority: \"Highest priority\",\n largestEstimate: \"Largest estimate\",\n STIsMostUseful: \"Superthread is most useful when you work with others.\",\n readOnly: \"Read only\",\n boardWillNotShowOnPublicPage: \"This board will not show on the public page\",\n removeBoard: \"Remove board\",\n noSprints: \"Sprints will be listed here from latest to earliest\",\n noNonSprintBoardsInThisSpace: \"No non-sprint boards in this space\",\n inviteToWorkspaceDescription: \"To add existing members to a space, go to space settings\",\n alreadyMembersOfWorkspace: \"Some people are already in the workspace. They’ll be added to any relevant spaces chosen below.\",\n information: \"Information\",\n success: \"Success\",\n error: \"Error\",\n warning: \"Warning\",\n typeSomething: \"Type something...\",\n invite: \"Invite\",\n latest: \"Latest\",\n cardChildrenTitle: \"Child cards\",\n childCards: \"Child cards\",\n members: \"Members\",\n removeFromCard: \"Remove from card\",\n displayName: \"Display name\",\n firstName: \"First name\",\n lastName: \"Last name\",\n update: \"Update\",\n openSuperthread: \"Open Superthread\",\n infoNotification: \"Info notification\",\n errorNotification: \"Error notification\",\n alertNotification: \"Alert notification\",\n successNotification: \"Success notification\",\n SignInIntoExistingWorkspace: \"Sign in to existing workspace\",\n preferences: \"Preferences\",\n pages: \"Pages\",\n gridView: \"Grid view\",\n listView: \"List view\",\n lastCreated: \"Last created\",\n lastUpdated: \"Last updated\",\n searchMembers: \"Search members\",\n or: \"Or\",\n add_collaborators: \"Add Collaborators\",\n selectWorkspace: \"Select a workspace\",\n selectWorkspaceIntegrations: \"Select a workspace for integration\",\n change: \"Change\",\n createNewWorkspace: \"Create new workspace\",\n notSeeingYourWorkspace: \"Don’t see your workspace? Try a different email:\",\n dismiss: \"Dismiss\",\n load: \"Load\",\n youAlreadyHave: \"You already have\",\n openBoard: \"Open board\",\n cardCannotBeMovedDirectlyToSpace: \"Card cannot be moved directly into space.\",\n clickToRename: \"Click to rename\",\n info: \"Info\",\n clearAllFilters: \"Clear all filters\",\n is: \"is\",\n is_not: \"is not\",\n includes: \"includes\",\n excludes: \"excludes\",\n fullscreen: \"Full screen\",\n commentsActivity: \"Comments & activity\",\n show: \"Show\",\n newestFirst: \"Newest first\",\n oldestFirst: \"Oldest first\",\n pageCreated: \"Page created\",\n [\"quickPage.label.setAsDefaultSpace\"]: \"Set as default space\",\n createNewList: \"Create new list\",\n enterListName: \"Enter list name\",\n listStatus: \"List status\",\n print: \"Print\",\n reactedWith: \"reacted with\",\n you: \"you\",\n cannotModidyListStatus: \"Cannot modify list status when there are %{resourceType} added\",\n onlineAgain: \"You’re back online\",\n youAreOffline: \"You’re offline\",\n exploring: \"Exploring\",\n deactivated: \"deactivated\",\n deleteView: \"Delete view\",\n saveAsNewView: \"Save as new view\",\n noResults: \"No results\",\n thisFilterDoesNotMatch: \"This filter does not match any cards\",\n rememberChoice: \"Remember choice\",\n electronOpenInApp: \"Open in app\",\n electronOpenInDesktopApp: \"Open in desktop app\",\n electronOpenLinksInDesktopApp: \"Open links in desktop app\",\n electronAutoOpenLinksInDesktopApp: \"Automatically open Superthread links in the desktop app\",\n electronCurrentLinkOpenedInApp: \"Current link was opened in the desktop app\",\n electronAppIsInstalled: \"It looks like you have the app installed\",\n electronUserMentioned: \"mentioned you\",\n electronResourceMoved: \"moved a\",\n electronMemberAdded: \"added you to a\",\n electronMemberRemoved: \"removed you from a\",\n electronCommentAdded: \"added a new comment\",\n electronResourceArchived: \"archived a\",\n electronUserReacted: \"reacted:\",\n results: \"Results\",\n tasks: \"Tasks\",\n updateAppToEditPage: \"Please update the app to edit this page\",\n electronRecentlyViewed: \"Recently viewed\",\n electronOpenDesktopApp: \"Open desktop app\",\n electronRedirectingToApp: \"Redirecting to desktop app...\",\n updateAppToEditComment: \"Please update the app to edit this comment\",\n updateAppToEditCard: \"Please update the app to edit this card\",\n connectToImporter: \"Connect to %{importerName}\",\n accessToken: \"access token\",\n installationCloudHostname: \"installation / cloud hostname\",\n findInYour: \"Find in your\",\n emailAddressYouUseFor: \"Email address used for your %{importerName} account\",\n selectWhich: \"Select which\",\n selectBoardsToImport: \"Select %{boardEq} you want to import %{cardEq} from\",\n importYourExistingNameToST: \"Import your existing %{importerName} %{boardEq} to Superthread\",\n jiraBoardMapingSubtitle: \"Select which boards you want to import from Jira.\",\n trelloBoardMapingSubtitle: \"Select which boards you want to import from Trello.\",\n shortcutBoardMapingSubtitle: \"Select the teams and workflows to import stories from.\",\n jiraQuickImportText: \"All teams will be imported into a space called ‘jira-import’. You can easily rename and reorganise your boards from there.\",\n trelloQuickImportText: \"All teams will be imported into a space called ‘trello-import’. You can easily rename and reorganise your boards from there.\",\n shortcutQuickImportText: \"Each ‘team-workflow’ board will be imported into a space called ‘shortcut-import’. You can easily rename and reorganise your boards from there.\",\n jiraCustomImportText: \"Choose which boards to import, and which spaces they should be imported to.\",\n trelloCustomImportText: \"Choose which boards to import, and which spaces they should be imported to.\",\n shortcutCustomImportText: \"Choose which ‘team-workflow’ boards to import, and which spaces they should be imported to.\",\n superthreadSpace: \"Superthread space\",\n mapImporterUsersToSTUSers: \"Map %{importerName} users to Superthread users (or invite missing ones) to preserve card members, creators, and activity.\",\n startImport: \"Start import\",\n wellLetYouKnowWhenImportFinishes: \"We’ll let you know when the import finishes\",\n feelFreeToContuinueUsingST: \"Feel free to continue using Superthread\",\n dontImportThisUser: \"Don’t import this user\",\n matchToAnExistingSTUser: \"Match to an existing Superthread user\",\n createANewUser: \"Create a new user (email invite)\",\n projectsCannotBeMovedToSpaces: \"Projects cannot be moved to spaces\",\n // importEpics: \"Import epics\",\n // importEpicsDesc:\n // \"Epics will be imported in their own separate Superthread board called ‘Epics’.\",\n importOpenStories: \"Import open stories\",\n importOpenStoriesDesc: \"Unresolved or opened stories will be imported with thier existing states.\",\n importStaleStories: \"Import stale stories\",\n importStaleStoriesDesc: \"Stories that haven’t been opened in over 6 moneths are considered stale. They will be imported to the archive and can be unarchived later.\",\n wedLikeToTake: \"We’d like to take\",\n thirtySeconds: \"30 seconds\",\n toShowYouAround: \"to show you around\",\n getStarted: \"Get started\",\n youCanAlways: \"You can always re-visit this tutorial from the help section in the sidebar\",\n youreGoodToGo: \"You’re good to go.\",\n quickStart: \"Quick start tutorial\",\n getToKnow: \"Get to know Superthread in 30 seconds\",\n desktopApp: \"Desktop app\",\n thisLinkWasOpenedInApp: \"This link was opened in the desktop app\",\n openHereInstead: \"Open here instead\",\n browseAndManageSpaces: \"Browse and manage spaces\",\n manageSpaces: \"Manage spaces\",\n searchSpaces: \"Search spaces\",\n createSpace: \"Create space\",\n addADescription: \"Add a description\",\n showingNumberOfSpaces: \"Showing %{num} result out of %{totalNum} total spaces\",\n noResultsFoundFor: 'No results found for \"%{query}\"',\n changeDescription: \"Change description\",\n contents: \"Contents\",\n createSpaceSubtitle: \"Spaces contain related boards, tasks, and pages. You might have a space per team, or per business area.\",\n spaceNameAndIcon: \"Space name and icon\",\n somethingShortAndClear: \"Something short and clear\",\n youCanChangeThisLater: \"You can change this later\",\n descritionOptional: \"Description (optional)\",\n whatIsThisSpaceFor: \"What is this space for?\",\n addPeopleToSpaceOptional: \"Add people to this space (optional)\",\n addPeople: \"Add people\",\n addPeopleSubtitle: \"If you invite people who are not part of the %{workspaceName} workspace, they’ll be added to it.\",\n openSpace: \"Open space\",\n openSpaceSubtitle: \"All members of your workspace can browse and join open spaces\",\n privateSpaceSubtitle: \"Workspace members cannot see or join private spaces unless they are invited by an existing member\",\n inviteNewPeople: \"Invite new people\",\n inviteeEmailAddress: \"Invitee email address\",\n inviteSectionSubtitle: \"They’ll be invited to the whole workspace, not just this space.\",\n couldntCreateSpace: \"Space could not be created, please try again.\",\n spaceCreated: \"Space created.\",\n emailAlreadyAdded: \"Email already added\",\n addingSomeMembersFailed: \"Failed to add some members\",\n founder: \"Founder\",\n director: \"Director\",\n teamLead: \"Team lead\",\n individualContributor: \"Individual contributor\",\n softwareEngineering: \"Software engineering\",\n design: \"Design\",\n productManagement: \"Product management\",\n marketing: \"Marketing\",\n finance: \"Finance\",\n development: \"Development\",\n marketer: \"Marketer\",\n sales: \"Sales\",\n clickToView: \"Click to view\",\n clickToDownload: \"Click to download\",\n business: \"Business\",\n pickAllThatApply: \"Pick all that apply\",\n pickOne: \"Pick one\",\n customerSupport: \"Customer support\",\n humanResources: \"Human resources\",\n socialMedia: \"Social media\",\n wordOfMouth: \"Word of mouth\",\n searchEngine: \"Search engine\",\n advertising: \"Advertising\",\n searchForSpaceOrBoard: \"Search for space or board\",\n starTypingToSearchFor: \"Start typing to search for\",\n [\"my-work\"]: \"My work\",\n [\"myWork.assigned\"]: \"Assigned to %{userName}\",\n [\"myWork.created\"]: \"Created by %{userName}\",\n [\"myWork.notes\"]: \"Notes\",\n [\"myWorkNoResults.created\"]: \"There are no cards created by you\",\n [\"myWorkNoResults.assigned\"]: \"There are no cards assigned to you\",\n [\"memberNoResults.assigned\"]: \"There are no cards assigned to %{userName}\",\n [\"memberNoResults.created\"]: \"There are no cards created by %{userName}\",\n newCard: \"New card\",\n addedCommentHiddenByFilter: \"Added comment is hidden by filter\",\n createdCardHiddenByFilter: \"Created card may be hidden by filter\",\n viewWork: \"View work\",\n removeFromSpace: \"Remove from space\",\n assignedInThisBoard: \"Assigned in this board\",\n layout: \"Layout\",\n createdCardMovedSortOrder: \"Created card may be moved by sort order\",\n createCardGroupBy: \"Card added to %{list}.\",\n canNotMoveCardInsameBoard: \"Can not move card in same board.\",\n latestReply: \"Latest reply\",\n replyLabel: \"Reply\",\n totalReplies: \"total replies\",\n olderReplies: \"older replies\",\n leaveReply: \"Leave a reply...\",\n hideReplies: \"Hide replies\",\n showReplies: \"Show replies\",\n oneReply: \"reply\",\n discardComment: \"Discard comment?\",\n areYouSureYouWantToDiscard: \"Are you sure you want to discard your comment?\",\n skipToEnd: \"Skip to end\",\n priority: \"Priority\",\n noPriority: \"No priority\",\n urgent: \"Urgent\",\n high: \"High\",\n medium: \"Medium\",\n low: \"Low\",\n priorities: \"Priorities\",\n changedThePriorityFrom: \"changed the priority from\",\n changedTheEstimateFrom: \"changed the estimate from\",\n setThePriorityTo: \"set the priority to\",\n setTheEstimateTo: \"set the estimate to\",\n removedTheEstimate: \"removed the estimate\",\n thereAreNoPages: \"There are no pages in this space.\",\n createNewPageOrDrag: \"Create a new page, or drag an existing page into this space in the sidebar.\",\n thereAreNoBoards: \"There are no boards in this space.\",\n createNewBoardOrDrag: \"Create a new board, or drag an existing board into this space in the sidebar.\",\n commentsOnly: \"Comments only\",\n activityOnly: \"Activity only\",\n seeCardsWithThisTag: \"See cards with this tag (count includes cards that might not show elsewhere)\",\n noResultsForThatName: \"No results for that name\",\n youCan: \"You can\",\n createASpace: \"create a space\",\n named: 'named \"%{query}\"',\n estimate: \"Estimate\",\n onePoint: \"1 point\",\n numberOfPoints: \"%{num} points\",\n extraSmall: \"Extra small\",\n small: \"Small\",\n mediumSize: \"Medium\",\n large: \"Large\",\n extraLarge: \"Extra large\",\n noEstimate: \"No estimate\",\n settingsProjectsPreferencesSubtitle: \"These settings will affect all members of the space\",\n howCardsAreEstimated: \"How cards are estimated in this space\",\n disableCardEstimationForThisSpace: \"Disable card estimation for this space\",\n fibonacciPoints: \"Fibbonaci points\",\n exponentialPoints: \"Exponential points\",\n tshirtSizes: \"T-shirt sizes\",\n setEstimate: \"Set estimate\",\n emailNotificationHelperText: \"An email every weekday with notifications you haven’t seen since the last email\",\n estimated: \"estimated\",\n cardSpaceEstimationTurnedOff: \"This card belongs to a space with estimation turned off\",\n totalEstimatePointsTooltipContent: \"%{totalPoints} estimated across %{numOfCards}\",\n estimates: \"estimates\",\n assignItTo: \"assign it to\",\n searchForACard: \"Search for a card\",\n createACard: \"Create a card\",\n archivedCardsAreHidden: \"archived cards are hidden\",\n enterANameAbove: \"Enter a name above\",\n chooseFiltersYouWouldLike: \"Then choose the filters you’d like in the filter bar\",\n cannotCreateViewOnMobile: \"You cannot create a view on mobile.\",\n viewCardInBoard: \"View card in its own board\",\n guestsMustBeAddedToOneSpace: \"Guests must be added to at least one space\",\n createCard: \"Create card\",\n suggestedBasedOnTitle: \"Suggested based on title\",\n acceptSuggestion: \"Accept suggestion\",\n rejectSuggestion: \"Reject suggestion\",\n suggestionPlaceholderText: \"Suggestion...\",\n changeEmail: \"Change email\",\n logOutAndContinue: \"Log out and continue\",\n confirmAccountOwnership: \"Confirm account ownership\",\n reauthenticateEmailDescription: \"To keep your account secure, we need you to log in again. Then you’ll be able to choose a new email address and complete the process.\",\n enterANewEmail: \"Enter a new email address:\",\n resendLoginCode: \"Resend login code\",\n emailAddressTakenByAnotherUser: \"Email address used by another user\",\n assistant: \"Assistant\",\n changeTone: \"Change tone\",\n simplify: \"Simplify\",\n summarize: \"Summarise\",\n translate: \"Translate\",\n generate: \"Generate\",\n replaceText: \"Replace text\",\n insertBelow: \"Insert below\",\n assistanceWith: \"What do you need assistance with?\",\n copiedToClipboard: \"Copied to clipboard\",\n academic: \"Academic\",\n casual: \"Casual\",\n confident: \"Confident\",\n friendly: \"Friendly\",\n neutral: \"Neutral\",\n professional: \"Professional\",\n aiFeatures: \"AI features\",\n emailDigestSentAt: \"Email digest at\",\n inYourTimezone: \"in your timezone (%{timezone})\",\n timezone: \"Timezone\",\n setAutomatically: \"Set automatically\",\n searchTimezone: \"Search timezone\",\n changeYourTimezoneInProfile: \"Change your timezone in profile.\",\n enableNotificationsFirst: \"Enable %{type} notifications first\",\n turnOnAIAssitantInFormatingToolbar: \"Turn on AI assistant in the text formatting toolbar\",\n superthreadSendingDataTo: \"Note that if you enable this for your workspace you consent to Superthread sending data to\",\n experimentalFeatureMayChangeFunctionality: \"This experimental feature may be subject to change in functionality and pricing.\",\n contactUsToEnable: \"Contact us to enable this feature.\",\n boardOpenedInTheBackground: \"%{boardTitle} board opened in the background\",\n resetFilters: \"Reset filters\",\n [\"create_space.title\"]: \"Create a space\",\n [\"create_space.tooltip\"]: \"Create a home for your team’s work\",\n [\"create_private_space.title\"]: \"Create a private space\",\n [\"create_private_space.tooltip\"]: \"Only people you invite can see a private space\",\n [\"invite_user.title\"]: \"Invite someone else\",\n [\"invite_user.tooltip\"]: \"Invite your team-mates to the workspace so they can track their work\",\n [\"mention_anything.title\"]: \"Mention something\",\n [\"mention_anything.tooltip\"]: \"Use the @ key to mention something, anywhere you can write\",\n [\"add_child_card.title\"]: \"Add a child card\",\n [\"add_child_card.tooltip\"]: \"Child cards help you break work down into smaller tasks\",\n [\"visit_inbox.title\"]: \"Check your inbox\",\n [\"visit_inbox.tooltip\"]: \"Keep track of everything you’re subscribed to in the inbox\",\n [\"move_page.title\"]: \"Move a page\",\n [\"move_page.tooltip\"]: \"Drag a page in the sidebar to move it wherever you want it\",\n [\"create_subpage.title\"]: \"Create a subpage\",\n [\"create_subpage.tooltip\"]: \"Subpages live inside other pages and help you structure your documents\",\n [\"add_page_icon.title\"]: \"Add a page icon\",\n [\"add_page_icon.tooltip\"]: \"A page icon helps you find the page again in search and the sidebar\",\n [\"add_page_cover.title\"]: \"Add a page cover image\",\n [\"add_page_cover.tooltip\"]: \"Set the tone for a page with a cover image\",\n [\"quick_card_shortcut.title\"]: \"Quick card shortcut (C)\",\n [\"quick_card_shortcut.tooltip\"]: \"Tap the C key anywhere to create a card\",\n [\"quick_page_shortcut.title\"]: \"Quick page shortcut (P)\",\n [\"quick_page_shortcut.tooltip\"]: \"Tap the P key anywhere to create a page\",\n [\"create_card.title\"]: \"Create a card\",\n [\"create_card.tooltip\"]: \"Create a card for each task you want to track\",\n [\"comment_on_card.title\"]: \"Comment on a card\",\n [\"comment_on_card.tooltip\"]: \"Write updates or note down your thoughts on a card\",\n [\"search_shortcut.title\"]: \"Find something with ⌘+K\",\n [\"search_shortcut.tooltip\"]: \"Quickly open universal search anywhere with this shortcut\",\n [\"create_board.title\"]: \"Create a board\",\n [\"create_board.tooltip\"]: \"Track the work of a sub-team or project\",\n [\"upload_avatar.title\"]: \"Upload avatar\",\n [\"upload_avatar.tooltip\"]: \"Help people recognise you around the app\",\n [\"create_page.title\"]: \"Create a page\",\n [\"create_page.tooltip\"]: \"Capture knowledge and thoughts with pages\",\n [\"set_your_name.title\"]: \"Set your name\",\n [\"set_your_name.tooltip\"]: \"Your name will be used throughout the app\",\n aCardMustHaveATitle: \"A card must have a title\",\n showAll: \"Show all\",\n showLess: \"Show less\",\n hideEmptyGroups: \"Hide empty groups\",\n showAnotherAssignee: \"Show another assignee\",\n showAnotherTags: \"Show another tags\",\n spaceMembers: \"Space members\",\n addExistingMembers: \"Add existing members\",\n inviteNewMembers: \"Invite new members\",\n spaceDetails: \"Space details\",\n makeBoardFullWidth: \"Make board full width\",\n askAiAssistantSearch: \"Ask AI based on your cards, pages, and notes\",\n backToSearchResults: \"Back to search results\",\n sources: \"Sources\",\n askAiQuestionLong: \"Question should have at least 10 characters.\",\n spaceSprintsSettings: \"%{space} space sprints settings\",\n turnOnSprintsForThisSpace: \"Turn on sprints for this space\",\n turnOnSprintsDesc: \"A “Sprints” section will be added to the sidebar for this space. A sprint is a board with a start and end date. When a sprint is completed, the next will start automatically.\",\n ownersAdminsCanTurnOnSprints: \"Only workspace owners, admins, and the space creator can change this setting\",\n onlyOwnerOfPrivateSpace: \"Only the owner of a private space can change this setting\",\n onlySpaceOwnerCanModifyMembers: \"Only owners can change space members\",\n cannotModifySpaceOwner: \"You cannot make changes to the owner of the space\",\n sprintLength: \"Sprint length\",\n weeks: \"weeks\",\n sprintStartOn: \"Sprints start on\",\n coolDownPeriod: \"Cool-down period between sprints\",\n coolDownPeriodDesc: \"A cool-down period will be added between each sprint. These are useful for e.g. retrospectives and clean-up activities.\",\n coolDownPeriodLength: \"Cool-down period length\",\n sprintBoardStatuses: \"Sprint board statuses\",\n sprintBoardStatusesDesc: \"Every sprint in this space uses the same statuses. You must have at least one of each status type. The “Backlog” status type is not available.\",\n addStatus: \"Add status\",\n dueInDays: \"Due in %{days} days\",\n sprints: \"Sprints\",\n addSprint: \"Add sprint\",\n sprint: \"Sprint\",\n openSprint: \"Open sprint\",\n renameSprint: \"Rename sprint\",\n markAsComplete: \"Mark as complete\",\n changeSprintDates: \"Change sprint dates\",\n changeSprintDatesFor: \"Change dates for %{sprintName}\",\n cancelSprint: \"Cancel sprint\",\n changeDates: \"Change dates\",\n chooseNewStartAndEndDates: \"Choose a new start or end date for %{sprintName}\",\n renameSprintDescription: \"Enter a new name for the sprint.\",\n startDateIsEarlierThanPreviousEndDate: \"Start date overlaps previous sprint’s end date\",\n enterSprintName: \"Enter sprint name\",\n cancelSprintWarning: \"All unfinished cards in this board will be moved into the cancelled status.\",\n dontCancel: \"Don’t cancel\",\n upgradePlan: \"Upgrade plan\",\n upgradePrivateSpaceTitle: \"Upgrade for private spaces\",\n upgradePrivateSpaceDescription: \"You can create private spaces on a paid plan.\",\n upgradePlanBadgeTooltip: \"Only the owner (%{spaceOwner}) and admins can change the workspace plan\",\n upgradeUserRolesTitle: \"Upgrade for user roles\",\n upgradeUserRolesDescription: \"You can choose non-admin user roles on a paid plan.\",\n upgradedWorkspace: \"Your workspace has been upgraded!\",\n sprintSettings: \"Sprint settings\",\n electronDownloadApp: \"Download the app\",\n electronDownloadAppDescription: \"We only support macOS. Let us know if there is demand for a Windows app.\",\n macArm64Label: \"Apple Silicon\",\n macx64Label: \"Apple Intel\",\n mailCopiedToClipboard: \"Email copied to clipboard\",\n cardsWithNoSprint: \"Cards with no sprint\",\n showCardsFrom: \"Show cards from\",\n yourColor: \"Your color\",\n thisColorWillHelp: \"This colour will help others identify you in some places.\",\n logo: \"Logo\",\n prStateOpen: \"%{count} open\",\n prStateClosed: \"%{count} closed\",\n prStateMerged: \"%{count} merged\",\n invitingPeopleToWorkspace: \"Only admins can invite new people to this workspace\",\n upgradePublicPageIndexingTitle: \"Upgrade for search engine indexing\",\n upgradePublicPageIndexingDescription: \"You can turn on search engine indexing on a paid plan.\",\n shortcutWarningText: \"Any Shortcut stories not assigned to a team will not be imported.\",\n coolDown: \"Cool-down\",\n noBoardsOrPages: \"No boards or pages\",\n language: \"Language\",\n usersWork: \"%{name}’s work\",\n renameAttachment: \"Rename attachment\",\n deleteAttachment: \"Delete attachment\",\n timelineLayoutDescription: \"Upgrade your workspace plan to use the timeline layout.\",\n upgradeViewsDescription: \"Upgrade your workspace plan to save views.\",\n createNewItem: \"Create new item\",\n statusType: \"Status type\",\n spaceLimitReached: \"The space limit has been reached. You can delete some spaces to create more.\",\n freePlanUsageLimits: \"Free plan usage limits\",\n item: \"Item\",\n usage: \"Usage\",\n limitReachedLong: \"If a limit is reached, you will need to remove items or upgrade the plan before new items can be created.\",\n limitReached: \"Limit reached\",\n resourceAndContentWillBeDeleted: 'The %{resourceType} \"%{resourceTitle}\" and its contents will be permanently deleted for everyone. This cannot be undone.',\n resourceWillBeDeleted: 'The %{resourceType} \"%{resourceTitle}\" will be permanently deleted for everyone. This cannot be undone.',\n epicWillBeDeleted: 'The %{resourceType} \"%{resourceTitle}\" will be permanently deleted. This cannot be undone. Any cards that have been added to the project will not be deleted.',\n listNameLabel: \"List name\",\n deleteList: \"Delete list\",\n itemName: \"Item name\",\n moveCardIntoSprint: \"Card moved to sprint %{sprintName}\",\n addView: \"Add view\",\n timeCreatedSort: \"Time created\",\n timeUpdatedSort: \"Time updated\",\n dueDateSort: \"Due date\",\n noSprintsLabel: \"No sprints\",\n createdViaEmailFrom: \"created via email from\",\n couldNotBeVerified: \"Could not be verified\",\n createCardsViaEmailTitle: \"Create cards in this board via email\",\n createCardsViaEmailDescription: \"Create a card in this board if anyone sends a message to an email address.\",\n onlyCurrentAddressWillWork: \"Only the address currently shown will work.\",\n regenerate: \"Regenerate\",\n emailCopiedToClipboard: \"Email copied to clipboard\",\n emailRegenerated: \"Email regenerated\",\n slackChannelNotifications: \"Slack channel notifications\",\n slackChannelNotificationsTitle: \"Send notifications about cards in this board to a Slack channel\",\n slackChannelNotificationsDescriptionDisabled: \"A Slack window will open and ask you to choose a channel\",\n slackChannelNotificationsDescriptionEnabled: \"Notifications from this board are sent to %{channel} in Slack.\",\n slackIntegrationError: \"Could not enable Slack integration. Please try again\",\n boardDoesNotExists: \"That board doesn’t exist\",\n boardActivity: \"Board activity\",\n sendTo: \"Send to\",\n slackPrivateMessage: \"a private message\",\n slackPrivateGroup: \"a private conversation\",\n slackPrivateChannel: \"a private channel\",\n webhookNotificationCardAddedBoard: \"Card added/moved to board\",\n webhookNotificationCardAddedList: \"Card added/moved to status\",\n webhookNotificationCardCommented: \"Comment left on card in board (excluding replies)\",\n webhookNotificationCardDueDate: \"Card due date is soon/overdue\",\n folder: \"Folder\",\n yourSpaces: \"Your spaces\",\n quoteReply: \"Quote and reply\",\n itemHasBeenDeleted: \"%{resourceType} has been deleted\",\n deletedNotification: \"deleted\",\n searchForBoard: \"Search for board\",\n activeSprintText: \"Current\",\n loadMoreSprints: \"Load more sprints\",\n try: \"Try\",\n [\"add_workspace_logo.title\"]: \"Add a workspace logo\",\n [\"add_workspace_logo.tooltip\"]: \"Upload a logo\",\n [\"customise_your_profile.title\"]: \"Customise your profile\",\n [\"customise_your_profile.tooltip\"]: \"Add a profile photo\",\n [\"import_tasks.title\"]: \"Import tasks\",\n [\"import_tasks.tooltip\"]: \"Import from Trello, Jira, or Shortcut\",\n [\"view_keyboard_shortcuts.title\"]: \"View keyboard shortcuts\",\n [\"view_keyboard_shortcuts.tooltip\"]: \"Open keyboard cheat sheet\",\n [\"connect_slack.title\"]: \"Connect Slack\",\n [\"connect_slack.tooltip\"]: \"Turn on Slack notifications\",\n seeAllWorkspaces: \"See all workspaces\",\n workspaceSettings: \"Workspace settings\",\n switchToRecentWorkspace: \"Switch to recent workspace\",\n icon: \"Icon\",\n addToSprint: \"Add to sprint\",\n addToProject: \"Add to project\",\n goToProject: \"Go to project\",\n addTags: \"Add tags\",\n cancelled: \"Cancelled\",\n sprintBoards: \"Sprint boards\",\n sprintSettingsBoardsDescription: \"These settings apply to all sprints in this space\",\n addedCard: \"Added card\",\n removedCard: \"Removed card\",\n addNewCard: \"Add new card\",\n addExistingCard: \"Add existing card\",\n changeEpicOrParent: \"Change project or parent\",\n cardAlreadyHasEpicOrParent: \"The chosen card already has a project or parent card. They will be changed if you add it to this project.\",\n changeEpic: \"Change project\",\n childCardIsPartOfEpic: 'The child card is part of the project \"%{epicName}\".',\n parentCardHasNoEpic: \"The parent card has no project.\",\n parentCardIsPartOfEpic: 'The parent card is part of the project \"%{epicName}\".',\n childCardsEpicWillBeRemoved: \"The child card’s project will be removed if you continue.\",\n childCardsEpicWillChangeToParents: \"The child card’s project will change to the parent card’s project if you continue.\",\n removeEpic: \"Remove project\",\n epicWillNoLongerBeAssociated: 'The child card will no longer be associated with the project \"%{epicName}\" if you remove it from its parent card.',\n childCardAlreadyHasParent: \"The child card already has a parent. The parent will be changed to this card if you continue.\",\n cardsDirectlyAddedToEpicCantHaveParent: \"Cards added directly to projects can’t have parent cards\",\n epicNoTagsFound: \"No tags found. Projects can only use workspace tags\",\n cannotChangeStatusForCardsInFinishedSprint: \"Cannot change status for cards in finished sprint\",\n cannotChangeStatusForArchivedCards: \"Cannot change status for archived cards\",\n cantMoveArchivedCardToSprint: \"Can’t move archived card to sprint\",\n relatedTo: \"Related to\",\n changePriority: \"Change priority\",\n changeEstimate: \"Change estimate\",\n changeTags: \"Change tags\",\n changeSprint: \"Change sprint\",\n goToSprint: \"Go to sprint\",\n pastSprints: \"Past sprints\",\n currentAndPlannedSprints: \"Current and planned sprints\",\n seeAllSprints: \"See all sprints\",\n currentAndNextSprint: \"Current and next sprint\",\n branchSpecificAutomationAddFailed: \"Failed to add new branch-specific automation.\",\n branchSpecificAutomationUpdateFailed: \"Failed to update branch-specific automation.\",\n branchSpecificAutomationRemoveFailed: \"Failed to remove branch-specific automation.\",\n thereAreNoCurrentOrPlannedSprints: \"There are no current or planned sprints\",\n thereIsNoCurrentOrNextSprint: \"There is no current or next sprint\",\n movedCardFrom: \"Moved card from\",\n movedEpicFrom: \"Moved project from\",\n rolledCardFrom: \"Rolled card from\",\n sprintMarkedAsCompleted: \"Sprint marked as completed\",\n sprintMarkedAsCancelled: \"Sprint marked as cancelled\",\n cardIsParent: \"Card is parent\",\n cardIsChild: \"Card is child\",\n cardIsRelated: \"Card is related\",\n parentCard: \"Parent card\",\n moveTo: \"Move to...\",\n pageMovedTo: \"Page moved to\",\n thisSpaceIsEmpty: \"This space is empty\",\n createSomethingToGetStarted: \"Create something to get started\",\n visualiseYourWorkflow: \"Visualise your workflow, track work, and keep things organised\",\n captureImportantInformation: \"Capture important information, collaborate with others, and share to the web\",\n organiseWorkIntoSprints: \"Organise work into stretches of time so you can plan more easily\",\n filterYourWorkspaceToCreateViews: \"Filter your workspace to create views, and share them with your team\",\n turnOnSprints: \"Turn on sprints\",\n cardViews: \"Card views\",\n convert: \"Convert\",\n convertCardToEpic: \"Convert card to project\",\n couldNotConvertCardToEpic: \"Couldn’t convert card to project\",\n cardSuccessfullyConvertedToEpic: \"Card successfully converted to project\",\n convertedCardWillLose: \"If you convert this card to a project, it will lose its %{arr, list}.\",\n convertedThisCardToEpic: \"converted this card to a project\",\n spaceLevelTags: \"space-level tags\",\n effortEstimate: \"effort estimate\",\n existingEpic: \"existing project\",\n roadmapMustHaveAtLeastOneStatus: \"The roadmap must have at least one status\",\n chosenPageIsAlreadySubpage: \"Chosen page is already a subpage of current page\",\n searchForResults: \"Search to show results\",\n parentCardIs: \"Parent card is...\",\n projectIs: \"Project is...\",\n convertedTo: \"converted to\",\n moveToCompletedSprint: \"Move to completed sprint?\",\n onlyDoneCardsCanBeMovedToCompletedSprint: \"Only “Done” cards can be moved to a completed sprint. This card will be changed to “Done” and moved.\",\n removeCardFromProject: \"Remove card from project\",\n roadmapOpenedInTheBackground: \"Roadmap opened in the background\",\n unfavouriteCurrentSprint: \"Unfavourite current sprint\",\n favouriteCurrentSprint: \"Favourite current sprint\",\n unfavouriteNextSprint: \"Unfavourite next sprint\",\n favouriteNextSprint: \"Favourite next sprint\",\n unfavouriteSprintName: \"Unfavourite %{sprintName}\",\n favouriteSprintName: \"Favourite %{sprintName}\",\n currentSprint: \"Current sprint\",\n parentWillBeRemovedIfAddToProject: \"The parent card will be removed if you add this card to a project, since cards inherit projects from parent cards\",\n cannotArchiveCardFromSprint: \"Cannot archive card from a sprint\",\n sprintCompleted: \"Sprint completed\",\n sprintCancelled: \"Sprint cancelled\",\n sprintDatesChanged: \"Sprint dates changed\",\n myWorkAndNotes: \"My work & notes\",\n notes: \"Notes\",\n suggestedActions: \"Suggested actions\",\n noSuggestedActions: \"No suggested actions\",\n noChanges: \"No changes\",\n changes: \"Changes\",\n cardUpdatedSuccessfully: \"Card updated successfully\",\n commentAddedSuccessfully: \"Comment added successfully\",\n updateCard: \"Update card\",\n moveCard: \"Move card\",\n assignMembers: \"Assign members\",\n removeMembers: \"Remove members\",\n generatingSuggestedActions: \"Generating suggested actions\",\n replaceContent: \"Replace content\",\n appendContent: \"Append content\",\n addDescription: \"Add description\",\n addDueDate: \"Add due date\",\n setTitle: \"Set title\",\n reject: \"Reject\",\n accept: \"Accept\",\n finaliseDetails: \"Finalise details\",\n tidyUp: \"Tidy up\",\n convertTo: \"Convert to...\",\n newNote: \"New note\",\n searchNotes: \"Search notes...\",\n favouriteNote: \"Favourite note\",\n archiveNote: \"Archive note\",\n deleteNote: \"Delete note\",\n original: \"Original\",\n tidied: \"Tidied\",\n untitledNote: \"Untitled note\",\n enhanced: \"Enhanced\",\n minimize: \"Minimize\",\n maximize: \"Maximize\",\n createNewNote: \"Create a new note\",\n youDontHaveAnyNotes: \"You don't have any notes yet\",\n transcript: \"Transcript\",\n assignedCards: \"Assigned cards\",\n createdCards: \"Created cards\",\n noTranscriptAvailable: \"No transcript available\",\n enhanceNotesUsingMacApp: \"Superthread can transcribe audio from your meetings to generate enhanced notes. Transcribing is only available in the Superthread desktop app for macOS.\",\n downloadApp: \"Download app\",\n enhance: \"Enhance\",\n macIntel: \"Mac Intel\",\n appleSilicon: \"Apple Silicon\",\n enhanceNotesUsingAI: \"Enhance your notes using AI\",\n showTranscript: \"Show transcript\",\n epicCreated: \"Project created\",\n analysingTranscript: \"Analysing transcript\",\n comparingYourNotes: \"Comparing your notes\",\n readingYourNotes: \"Reading your notes\",\n enhancingYourNotes: \"Enhancing your notes\",\n finished: \"Finished\",\n note: \"Note\",\n epicMustHaveTitle: \"A project must have a title\",\n seeAllNotes: \"See all notes\",\n autoSaved: \"Auto-saved\",\n projectsAreTrackedOnRoadmap: \"Projects are tracked on the roadmap\",\n addCardsToProject: \"Add cards to this project\",\n projectEmptyStateDescription: \"A project is a large piece of work comprised of many cards from across the workspace. Create a project in a column, or edit the default statuses.\",\n cardInProjectEmptyStateFooter: \"A card can only belong to one project\",\n addCardsThatContributeToProject: \"Add cards that contribute to this project. You can\",\n noProject: \"No project\",\n noteTemplates: \"Note templates\",\n noteTemplatesSettingsSubtitle: \"Quickly change the formatting of notes with templates\",\n noNoteTemplates: \"No note templates\",\n createNoteTemplate: \"Create note template\",\n sections: \"Sections\",\n sectionHeading: \"Section heading\",\n sectionDescriptionPlaceholder: \"This section should focus on...\",\n addSection: \"Add section\",\n superthread: \"Superthread\",\n deletedTemplate: \"Deleted template\",\n autoEnhanced: \"Auto-enhanced\",\n meetingContext: \"Meeting context\",\n meetingContextPlaceholder: \"Provide an overview of the meeting and what you want to get out of it...\",\n meetingContextDescription: \"This helps Superthread understand what to focus on when enhancing your notes\",\n duplicateTemplate: \"Duplicate template\",\n favouriteTemplates: \"Favourite templates\",\n introduction: \"Introduction\",\n sampleSectionDescription: \"Capture any interesting talking points from the small-talk at the start of the meeting. Ignore discussions about the weather.\",\n allowSuperthreadToTranscribe: \"Allow Superthread to transcribe your meetings\",\n superthreadCanEnhance: \"Superthread can enhance your notes by transcribing audio directly from your laptop, no meeting bots needed. It works for in-person and virtual meetings, with full control over when it’s on. Your audio is never stored or used for anything else.\",\n transcribeYourVoice: \"Transcribe your voice\",\n transcribeOthersVoice: \"Transcribe others' voice\",\n allowMicrophoneCapture: \"Allow microphone capture\",\n allowSystemAudioCapture: \"Allow system audio capture\",\n microphoneAccessNotAllowedTitle: \"Manually allow microphone access\",\n microphoneAccessNotAllowedDesc1: \"Microphone access was previously not allowed, so you will need to allow it manually.\",\n microphoneAccessNotAllowedDesc2: \"In macOS, go to System Settings > Privacy & Security > Microphone and allow the “Superthread” app.\",\n microphoneAccessNotAllowedDesc3: \"After you’ve done that, please quit and re-open this app, then return here.\",\n systemAccessNotAllowedTitle: \"Manually allow system audio access\",\n systemAccessNotAllowedDesc1: \"Microphone access was previously not allowed, so you will need to allow it manually.\",\n systemAccessNotAllowedDesc2: \"In macOS, go to System Settings > Privacy & Security > Microphone and allow the “Superthread” app.\",\n systemAccessNotAllowedDesc3: \"After you’ve done that, please quit and re-open this app, then return here.\",\n editNoteTemplate: \"Edit note template\",\n viewNoteTemplate: \"View note template\",\n viewTranscript: \"View transcript\",\n transcribeHereInstead: \"Transcribe here instead?\",\n currentlyTranscribingAnotherNote: \"The note “%{noteTitle}” is currently transcribing. Do you want to stop transcription there and transcribe here instead?\",\n transcribeHere: \"Transcribe here\",\n resume: \"Resume\",\n pause: \"Pause\",\n transcribe: \"Transcribe\",\n currentlyTranscribing: \"Currently transcribing\",\n transcribingOnlyAvailableOnMac: \"Transcribing is only available in the macOS app\",\n startTranscription: \"Start transcription\",\n stopTranscription: \"Stop transcription\",\n openTranscribingNote: \"Open transcribing note\",\n notesSettings: \"Notes settings\",\n theseSettingsArePersonalToYou: \"These settings are personal to you\",\n transcriptionJargonTitle: \"Jargon for transcription\",\n transcriptionJargonPlaceholder: \"Tehnical terms, uncommon names, project names, etc.\",\n transcriptionJargonDescription: \"Add any words you think audio transcription might have a problem with. Separate words with commas.\",\n selectANote: \"Select a note\",\n noteDoesntExist: \"Note doesn't exist\",\n deleteSection: \"Delete section\",\n untitledSection: \"Untitled section\",\n messageAgentAssistant: \"Message agent assistant\",\n initialAgentMessage: \"I'm here to help you write instructions for your agent. Let me know what do you want it to do.\",\n agentMessageError: \"An error occurred. Please try again.\",\n agentInstructions: \"Agent instructions\",\n version: \"Version\",\n templateWithChildCardsNotAllowed: \"You can only apply a template to a child card if the template has none of its own children\",\n copyNoteToClipboard: \"Copy note to clipboard\",\n noteCopiedToClipboard: \"Note copied to clipboard\",\n copyTranscriptToClipboard: \"Copy transcript to clipboard\",\n transcriptCopiedToClipboard: \"Transcript copied to clipboard\",\n anyoneWithThisLinkCanViewNote: \"Anyone with this link can view the note\",\n notesEnhancedBySuperthread: \"Notes enhanced by Superthread\",\n connectGoogleCalendar: \"Connect Google Calendar\",\n googleCalendarIntegration: \"Google calendar integration\",\n googleCalendarIntegrationSubtitle: \"Connect to your Google Calendar to easily create notes for upcoming meetings\",\n calendarAccountConnected: \"Calendar account connected\",\n disconnect: \"Disconnect\",\n showCalendarMeetingsUpTo: \"Show calendar meetings up to\",\n dayAheadInNotesList: \"day ahead in the notes list\",\n daysAheadInNotesList: \"days ahead in the notes list\",\n eventTypesToIncludeInNotesList: \"Event types to include in notes list\",\n [\"calendar.all_day\"]: \"All-day events, including multi-day events\",\n [\"calendar.event_link\"]: \"Events without a meeting link\",\n [\"calendar.participants\"]: \"Events with only one participant\",\n createNoteFromUpcomingMeeting: \"Create a note from an upcoming meeting\",\n noUpcomingMeetings: \"No upcoming meetings. You can change the time-frame in\",\n seeUpcomingMeetings: \"See upcoming meetings here with the\",\n searchForAnApp: \"Search for an app...\",\n meetingAppsWatched: \"%{num} meeting apps watched\",\n automaticMeetingDetectionTitle: \"Automatic meeting detection\",\n automaticMeetingDetectionDescription: \"Superthread detects when a meeting app is using the microphone and notifies you to create a note\",\n joinMeetingFromNote: \"Join %{provider} meeting (%{time})\",\n searchPlaceholderAskAiNotes: \"Ask a question about your notes...\",\n askAi: \"Ask AI\",\n transcribeHereInsteadPositive: \"Transcribe here instead\",\n notesAreBetterWithOurApp: \"Notes are better with our app\",\n downloadTheMacOSApp: \"Download the macOS app\",\n toTranscribeMeetings: \"to transcribe meetings\",\n notifyUpcomingMeetingsTitle: \"Notify me of upcoming meetings\",\n notifyUpcomingMeetingsDescription: \" If a meeting is about to start Superthread will notify you and offer to create a new note.\",\n requiresMacosAppOne: \"Requires the\",\n requiresMacosAppTwo: \"macOS app.\",\n meetingsMenuBarTitle: \"Show upcoming meetings next to the menu bar icon\",\n meetingsMenuBarDescription: \"The next meeting on the current day will show next to the Superthread icon in the menu bar.\",\n meetingName: \"Meeting name\",\n meetingTime: \"Meeting time\",\n searchLanguage: \"Search language\",\n [\"get_started_notes.title\"]: \"Get started with notes\",\n [\"get_started_notes.tooltip\"]: \"Meeting transcription and AI-enhanced note-taking\",\n transcriptionNotAvailableOnPlan: \"Transcription is not available on this plan. Click to see available plans\"\n};\nvar index_default = en;\nexport {\n index_default as default\n};\n","function E () {\n // Keep this empty so it's easier to inherit from\n // (via https://github.com/lipsmack from https://github.com/scottcorgan/tiny-emitter/issues/3)\n}\n\nE.prototype = {\n on: function (name, callback, ctx) {\n var e = this.e || (this.e = {});\n\n (e[name] || (e[name] = [])).push({\n fn: callback,\n ctx: ctx\n });\n\n return this;\n },\n\n once: function (name, callback, ctx) {\n var self = this;\n function listener () {\n self.off(name, listener);\n callback.apply(ctx, arguments);\n };\n\n listener._ = callback\n return this.on(name, listener, ctx);\n },\n\n emit: function (name) {\n var data = [].slice.call(arguments, 1);\n var evtArr = ((this.e || (this.e = {}))[name] || []).slice();\n var i = 0;\n var len = evtArr.length;\n\n for (i; i < len; i++) {\n evtArr[i].fn.apply(evtArr[i].ctx, data);\n }\n\n return this;\n },\n\n off: function (name, callback) {\n var e = this.e || (this.e = {});\n var evts = e[name];\n var liveEvents = [];\n\n if (evts && callback) {\n for (var i = 0, len = evts.length; i < len; i++) {\n if (evts[i].fn !== callback && evts[i].fn._ !== callback)\n liveEvents.push(evts[i]);\n }\n }\n\n // Remove event from queue to prevent memory leak\n // Suggested by https://github.com/lazd\n // Ref: https://github.com/scottcorgan/tiny-emitter/commit/c6ebfaa9bc973b33d110a84a307742b7cf94c953#commitcomment-5024910\n\n (liveEvents.length)\n ? e[name] = liveEvents\n : delete e[name];\n\n return this;\n }\n};\n\nmodule.exports = E;\nmodule.exports.TinyEmitter = E;\n","export const ROUND_ARROW =\n '';\n\nexport const BOX_CLASS = `__NAMESPACE_PREFIX__-box`;\nexport const CONTENT_CLASS = `__NAMESPACE_PREFIX__-content`;\nexport const BACKDROP_CLASS = `__NAMESPACE_PREFIX__-backdrop`;\nexport const ARROW_CLASS = `__NAMESPACE_PREFIX__-arrow`;\nexport const SVG_ARROW_CLASS = `__NAMESPACE_PREFIX__-svg-arrow`;\n\nexport const TOUCH_OPTIONS = {passive: true, capture: true};\n\nexport const TIPPY_DEFAULT_APPEND_TO = () => document.body;\n","import {BasePlacement, Placement} from './types';\n\nexport function hasOwnProperty(\n obj: Record,\n key: string\n): boolean {\n return {}.hasOwnProperty.call(obj, key);\n}\n\nexport function getValueAtIndexOrReturn(\n value: T | [T | null, T | null],\n index: number,\n defaultValue: T | [T, T]\n): T {\n if (Array.isArray(value)) {\n const v = value[index];\n return v == null\n ? Array.isArray(defaultValue)\n ? defaultValue[index]\n : defaultValue\n : v;\n }\n\n return value;\n}\n\nexport function isType(value: any, type: string): boolean {\n const str = {}.toString.call(value);\n return str.indexOf('[object') === 0 && str.indexOf(`${type}]`) > -1;\n}\n\nexport function invokeWithArgsOrReturn(value: any, args: any[]): any {\n return typeof value === 'function' ? value(...args) : value;\n}\n\nexport function debounce(\n fn: (arg: T) => void,\n ms: number\n): (arg: T) => void {\n // Avoid wrapping in `setTimeout` if ms is 0 anyway\n if (ms === 0) {\n return fn;\n }\n\n let timeout: any;\n\n return (arg): void => {\n clearTimeout(timeout);\n timeout = setTimeout(() => {\n fn(arg);\n }, ms);\n };\n}\n\nexport function removeProperties(obj: T, keys: string[]): Partial {\n const clone = {...obj};\n keys.forEach((key) => {\n delete (clone as any)[key];\n });\n return clone;\n}\n\nexport function splitBySpaces(value: string): string[] {\n return value.split(/\\s+/).filter(Boolean);\n}\n\nexport function normalizeToArray(value: T | T[]): T[] {\n return ([] as T[]).concat(value);\n}\n\nexport function pushIfUnique(arr: T[], value: T): void {\n if (arr.indexOf(value) === -1) {\n arr.push(value);\n }\n}\n\nexport function appendPxIfNumber(value: string | number): string {\n return typeof value === 'number' ? `${value}px` : value;\n}\n\nexport function unique(arr: T[]): T[] {\n return arr.filter((item, index) => arr.indexOf(item) === index);\n}\n\nexport function getNumber(value: string | number): number {\n return typeof value === 'number' ? value : parseFloat(value);\n}\n\nexport function getBasePlacement(placement: Placement): BasePlacement {\n return placement.split('-')[0] as BasePlacement;\n}\n\nexport function arrayFrom(value: ArrayLike): any[] {\n return [].slice.call(value);\n}\n\nexport function removeUndefinedProps(\n obj: Record\n): Partial> {\n return Object.keys(obj).reduce((acc, key) => {\n if (obj[key] !== undefined) {\n (acc as any)[key] = obj[key];\n }\n\n return acc;\n }, {});\n}\n","import {ReferenceElement, Targets} from './types';\nimport {PopperTreeData} from './types-internal';\nimport {arrayFrom, isType, normalizeToArray, getBasePlacement} from './utils';\n\nexport function div(): HTMLDivElement {\n return document.createElement('div');\n}\n\nexport function isElement(value: unknown): value is Element | DocumentFragment {\n return ['Element', 'Fragment'].some((type) => isType(value, type));\n}\n\nexport function isNodeList(value: unknown): value is NodeList {\n return isType(value, 'NodeList');\n}\n\nexport function isMouseEvent(value: unknown): value is MouseEvent {\n return isType(value, 'MouseEvent');\n}\n\nexport function isReferenceElement(value: any): value is ReferenceElement {\n return !!(value && value._tippy && value._tippy.reference === value);\n}\n\nexport function getArrayOfElements(value: Targets): Element[] {\n if (isElement(value)) {\n return [value];\n }\n\n if (isNodeList(value)) {\n return arrayFrom(value);\n }\n\n if (Array.isArray(value)) {\n return value;\n }\n\n return arrayFrom(document.querySelectorAll(value));\n}\n\nexport function setTransitionDuration(\n els: (HTMLDivElement | null)[],\n value: number\n): void {\n els.forEach((el) => {\n if (el) {\n el.style.transitionDuration = `${value}ms`;\n }\n });\n}\n\nexport function setVisibilityState(\n els: (HTMLDivElement | null)[],\n state: 'visible' | 'hidden'\n): void {\n els.forEach((el) => {\n if (el) {\n el.setAttribute('data-state', state);\n }\n });\n}\n\nexport function getOwnerDocument(\n elementOrElements: Element | Element[]\n): Document {\n const [element] = normalizeToArray(elementOrElements);\n\n // Elements created via a have an ownerDocument with no reference to the body\n return element?.ownerDocument?.body ? element.ownerDocument : document;\n}\n\nexport function isCursorOutsideInteractiveBorder(\n popperTreeData: PopperTreeData[],\n event: MouseEvent\n): boolean {\n const {clientX, clientY} = event;\n\n return popperTreeData.every(({popperRect, popperState, props}) => {\n const {interactiveBorder} = props;\n const basePlacement = getBasePlacement(popperState.placement);\n const offsetData = popperState.modifiersData.offset;\n\n if (!offsetData) {\n return true;\n }\n\n const topDistance = basePlacement === 'bottom' ? offsetData.top!.y : 0;\n const bottomDistance = basePlacement === 'top' ? offsetData.bottom!.y : 0;\n const leftDistance = basePlacement === 'right' ? offsetData.left!.x : 0;\n const rightDistance = basePlacement === 'left' ? offsetData.right!.x : 0;\n\n const exceedsTop =\n popperRect.top - clientY + topDistance > interactiveBorder;\n const exceedsBottom =\n clientY - popperRect.bottom - bottomDistance > interactiveBorder;\n const exceedsLeft =\n popperRect.left - clientX + leftDistance > interactiveBorder;\n const exceedsRight =\n clientX - popperRect.right - rightDistance > interactiveBorder;\n\n return exceedsTop || exceedsBottom || exceedsLeft || exceedsRight;\n });\n}\n\nexport function updateTransitionEndListener(\n box: HTMLDivElement,\n action: 'add' | 'remove',\n listener: (event: TransitionEvent) => void\n): void {\n const method = `${action}EventListener` as\n | 'addEventListener'\n | 'removeEventListener';\n\n // some browsers apparently support `transition` (unprefixed) but only fire\n // `webkitTransitionEnd`...\n ['transitionend', 'webkitTransitionEnd'].forEach((event) => {\n box[method](event, listener as EventListener);\n });\n}\n\n/**\n * Compared to xxx.contains, this function works for dom structures with shadow\n * dom\n */\nexport function actualContains(parent: Element, child: Element): boolean {\n let target = child;\n while (target) {\n if (parent.contains(target)) {\n return true;\n }\n target = (target.getRootNode?.() as any)?.host;\n }\n return false;\n}\n","import {TOUCH_OPTIONS} from './constants';\nimport {isReferenceElement} from './dom-utils';\n\nexport const currentInput = {isTouch: false};\nlet lastMouseMoveTime = 0;\n\n/**\n * When a `touchstart` event is fired, it's assumed the user is using touch\n * input. We'll bind a `mousemove` event listener to listen for mouse input in\n * the future. This way, the `isTouch` property is fully dynamic and will handle\n * hybrid devices that use a mix of touch + mouse input.\n */\nexport function onDocumentTouchStart(): void {\n if (currentInput.isTouch) {\n return;\n }\n\n currentInput.isTouch = true;\n\n if (window.performance) {\n document.addEventListener('mousemove', onDocumentMouseMove);\n }\n}\n\n/**\n * When two `mousemove` event are fired consecutively within 20ms, it's assumed\n * the user is using mouse input again. `mousemove` can fire on touch devices as\n * well, but very rarely that quickly.\n */\nexport function onDocumentMouseMove(): void {\n const now = performance.now();\n\n if (now - lastMouseMoveTime < 20) {\n currentInput.isTouch = false;\n\n document.removeEventListener('mousemove', onDocumentMouseMove);\n }\n\n lastMouseMoveTime = now;\n}\n\n/**\n * When an element is in focus and has a tippy, leaving the tab/window and\n * returning causes it to show again. For mouse users this is unexpected, but\n * for keyboard use it makes sense.\n * TODO: find a better technique to solve this problem\n */\nexport function onWindowBlur(): void {\n const activeElement = document.activeElement as HTMLElement | null;\n\n if (isReferenceElement(activeElement)) {\n const instance = activeElement._tippy!;\n\n if (activeElement.blur && !instance.state.isVisible) {\n activeElement.blur();\n }\n }\n}\n\nexport default function bindGlobalEventListeners(): void {\n document.addEventListener('touchstart', onDocumentTouchStart, TOUCH_OPTIONS);\n window.addEventListener('blur', onWindowBlur);\n}\n","export const isBrowser =\n typeof window !== 'undefined' && typeof document !== 'undefined';\n\nexport const isIE11 = isBrowser\n ? // @ts-ignore\n !!window.msCrypto\n : false;\n","import {DefaultProps, Plugin, Props, ReferenceElement, Tippy} from './types';\nimport {\n hasOwnProperty,\n removeProperties,\n invokeWithArgsOrReturn,\n} from './utils';\nimport {warnWhen} from './validation';\nimport {TIPPY_DEFAULT_APPEND_TO} from './constants';\n\nconst pluginProps = {\n animateFill: false,\n followCursor: false,\n inlinePositioning: false,\n sticky: false,\n};\n\nconst renderProps = {\n allowHTML: false,\n animation: 'fade',\n arrow: true,\n content: '',\n inertia: false,\n maxWidth: 350,\n role: 'tooltip',\n theme: '',\n zIndex: 9999,\n};\n\nexport const defaultProps: DefaultProps = {\n appendTo: TIPPY_DEFAULT_APPEND_TO,\n aria: {\n content: 'auto',\n expanded: 'auto',\n },\n delay: 0,\n duration: [300, 250],\n getReferenceClientRect: null,\n hideOnClick: true,\n ignoreAttributes: false,\n interactive: false,\n interactiveBorder: 2,\n interactiveDebounce: 0,\n moveTransition: '',\n offset: [0, 10],\n onAfterUpdate() {},\n onBeforeUpdate() {},\n onCreate() {},\n onDestroy() {},\n onHidden() {},\n onHide() {},\n onMount() {},\n onShow() {},\n onShown() {},\n onTrigger() {},\n onUntrigger() {},\n onClickOutside() {},\n placement: 'top',\n plugins: [],\n popperOptions: {},\n render: null,\n showOnCreate: false,\n touch: true,\n trigger: 'mouseenter focus',\n triggerTarget: null,\n ...pluginProps,\n ...renderProps,\n};\n\nconst defaultKeys = Object.keys(defaultProps);\n\nexport const setDefaultProps: Tippy['setDefaultProps'] = (partialProps) => {\n /* istanbul ignore else */\n if (__DEV__) {\n validateProps(partialProps, []);\n }\n\n const keys = Object.keys(partialProps) as Array;\n keys.forEach((key) => {\n (defaultProps as any)[key] = partialProps[key];\n });\n};\n\nexport function getExtendedPassedProps(\n passedProps: Partial & Record\n): Partial {\n const plugins = passedProps.plugins || [];\n const pluginProps = plugins.reduce>((acc, plugin) => {\n const {name, defaultValue} = plugin;\n\n if (name) {\n acc[name] =\n passedProps[name] !== undefined\n ? passedProps[name]\n : (defaultProps as any)[name] ?? defaultValue;\n }\n\n return acc;\n }, {});\n\n return {\n ...passedProps,\n ...pluginProps,\n };\n}\n\nexport function getDataAttributeProps(\n reference: ReferenceElement,\n plugins: Plugin[]\n): Record {\n const propKeys = plugins\n ? Object.keys(getExtendedPassedProps({...defaultProps, plugins}))\n : defaultKeys;\n\n const props = propKeys.reduce(\n (acc: Partial & Record, key) => {\n const valueAsString = (\n reference.getAttribute(`data-tippy-${key}`) || ''\n ).trim();\n\n if (!valueAsString) {\n return acc;\n }\n\n if (key === 'content') {\n acc[key] = valueAsString;\n } else {\n try {\n acc[key] = JSON.parse(valueAsString);\n } catch (e) {\n acc[key] = valueAsString;\n }\n }\n\n return acc;\n },\n {}\n );\n\n return props;\n}\n\nexport function evaluateProps(\n reference: ReferenceElement,\n props: Props\n): Props {\n const out = {\n ...props,\n content: invokeWithArgsOrReturn(props.content, [reference]),\n ...(props.ignoreAttributes\n ? {}\n : getDataAttributeProps(reference, props.plugins)),\n };\n\n out.aria = {\n ...defaultProps.aria,\n ...out.aria,\n };\n\n out.aria = {\n expanded:\n out.aria.expanded === 'auto' ? props.interactive : out.aria.expanded,\n content:\n out.aria.content === 'auto'\n ? props.interactive\n ? null\n : 'describedby'\n : out.aria.content,\n };\n\n return out;\n}\n\nexport function validateProps(\n partialProps: Partial = {},\n plugins: Plugin[] = []\n): void {\n const keys = Object.keys(partialProps) as Array;\n keys.forEach((prop) => {\n const nonPluginProps = removeProperties(\n defaultProps,\n Object.keys(pluginProps)\n );\n\n let didPassUnknownProp = !hasOwnProperty(nonPluginProps, prop);\n\n // Check if the prop exists in `plugins`\n if (didPassUnknownProp) {\n didPassUnknownProp =\n plugins.filter((plugin) => plugin.name === prop).length === 0;\n }\n\n warnWhen(\n didPassUnknownProp,\n [\n `\\`${prop}\\``,\n \"is not a valid prop. You may have spelled it incorrectly, or if it's\",\n 'a plugin, forgot to pass it in an array as props.plugins.',\n '\\n\\n',\n 'All props: https://atomiks.github.io/tippyjs/v6/all-props/\\n',\n 'Plugins: https://atomiks.github.io/tippyjs/v6/plugins/',\n ].join(' ')\n );\n });\n}\n","import {\n ARROW_CLASS,\n BACKDROP_CLASS,\n BOX_CLASS,\n CONTENT_CLASS,\n SVG_ARROW_CLASS,\n} from './constants';\nimport {div, isElement} from './dom-utils';\nimport {Instance, PopperElement, Props} from './types';\nimport {PopperChildren} from './types-internal';\nimport {arrayFrom} from './utils';\n\n// Firefox extensions don't allow .innerHTML = \"...\" property. This tricks it.\nconst innerHTML = (): 'innerHTML' => 'innerHTML';\n\nfunction dangerouslySetInnerHTML(element: Element, html: string): void {\n element[innerHTML()] = html;\n}\n\nfunction createArrowElement(value: Props['arrow']): HTMLDivElement {\n const arrow = div();\n\n if (value === true) {\n arrow.className = ARROW_CLASS;\n } else {\n arrow.className = SVG_ARROW_CLASS;\n\n if (isElement(value)) {\n arrow.appendChild(value);\n } else {\n dangerouslySetInnerHTML(arrow, value as string);\n }\n }\n\n return arrow;\n}\n\nexport function setContent(content: HTMLDivElement, props: Props): void {\n if (isElement(props.content)) {\n dangerouslySetInnerHTML(content, '');\n content.appendChild(props.content);\n } else if (typeof props.content !== 'function') {\n if (props.allowHTML) {\n dangerouslySetInnerHTML(content, props.content);\n } else {\n content.textContent = props.content;\n }\n }\n}\n\nexport function getChildren(popper: PopperElement): PopperChildren {\n const box = popper.firstElementChild as HTMLDivElement;\n const boxChildren = arrayFrom(box.children);\n\n return {\n box,\n content: boxChildren.find((node) => node.classList.contains(CONTENT_CLASS)),\n arrow: boxChildren.find(\n (node) =>\n node.classList.contains(ARROW_CLASS) ||\n node.classList.contains(SVG_ARROW_CLASS)\n ),\n backdrop: boxChildren.find((node) =>\n node.classList.contains(BACKDROP_CLASS)\n ),\n };\n}\n\nexport function render(\n instance: Instance\n): {\n popper: PopperElement;\n onUpdate?: (prevProps: Props, nextProps: Props) => void;\n} {\n const popper = div();\n\n const box = div();\n box.className = BOX_CLASS;\n box.setAttribute('data-state', 'hidden');\n box.setAttribute('tabindex', '-1');\n\n const content = div();\n content.className = CONTENT_CLASS;\n content.setAttribute('data-state', 'hidden');\n\n setContent(content, instance.props);\n\n popper.appendChild(box);\n box.appendChild(content);\n\n onUpdate(instance.props, instance.props);\n\n function onUpdate(prevProps: Props, nextProps: Props): void {\n const {box, content, arrow} = getChildren(popper);\n\n if (nextProps.theme) {\n box.setAttribute('data-theme', nextProps.theme);\n } else {\n box.removeAttribute('data-theme');\n }\n\n if (typeof nextProps.animation === 'string') {\n box.setAttribute('data-animation', nextProps.animation);\n } else {\n box.removeAttribute('data-animation');\n }\n\n if (nextProps.inertia) {\n box.setAttribute('data-inertia', '');\n } else {\n box.removeAttribute('data-inertia');\n }\n\n box.style.maxWidth =\n typeof nextProps.maxWidth === 'number'\n ? `${nextProps.maxWidth}px`\n : nextProps.maxWidth;\n\n if (nextProps.role) {\n box.setAttribute('role', nextProps.role);\n } else {\n box.removeAttribute('role');\n }\n\n if (\n prevProps.content !== nextProps.content ||\n prevProps.allowHTML !== nextProps.allowHTML\n ) {\n setContent(content, instance.props);\n }\n\n if (nextProps.arrow) {\n if (!arrow) {\n box.appendChild(createArrowElement(nextProps.arrow));\n } else if (prevProps.arrow !== nextProps.arrow) {\n box.removeChild(arrow);\n box.appendChild(createArrowElement(nextProps.arrow));\n }\n } else if (arrow) {\n box.removeChild(arrow!);\n }\n }\n\n return {\n popper,\n onUpdate,\n };\n}\n\n// Runtime check to identify if the render function is the default one; this\n// way we can apply default CSS transitions logic and it can be tree-shaken away\nrender.$$tippy = true;\n","import {createPopper, StrictModifiers, Modifier} from '@popperjs/core';\nimport {currentInput} from './bindGlobalEventListeners';\nimport {isIE11} from './browser';\nimport {TIPPY_DEFAULT_APPEND_TO, TOUCH_OPTIONS} from './constants';\nimport {\n actualContains,\n div,\n getOwnerDocument,\n isCursorOutsideInteractiveBorder,\n isMouseEvent,\n setTransitionDuration,\n setVisibilityState,\n updateTransitionEndListener,\n} from './dom-utils';\nimport {defaultProps, evaluateProps, getExtendedPassedProps} from './props';\nimport {getChildren} from './template';\nimport {\n Content,\n Instance,\n LifecycleHooks,\n PopperElement,\n Props,\n ReferenceElement,\n} from './types';\nimport {ListenerObject, PopperTreeData, PopperChildren} from './types-internal';\nimport {\n arrayFrom,\n debounce,\n getValueAtIndexOrReturn,\n invokeWithArgsOrReturn,\n normalizeToArray,\n pushIfUnique,\n splitBySpaces,\n unique,\n removeUndefinedProps,\n} from './utils';\nimport {createMemoryLeakWarning, errorWhen, warnWhen} from './validation';\n\nlet idCounter = 1;\nlet mouseMoveListeners: ((event: MouseEvent) => void)[] = [];\n\n// Used by `hideAll()`\nexport let mountedInstances: Instance[] = [];\n\nexport default function createTippy(\n reference: ReferenceElement,\n passedProps: Partial\n): Instance {\n const props = evaluateProps(reference, {\n ...defaultProps,\n ...getExtendedPassedProps(removeUndefinedProps(passedProps)),\n });\n\n // ===========================================================================\n // 🔒 Private members\n // ===========================================================================\n let showTimeout: any;\n let hideTimeout: any;\n let scheduleHideAnimationFrame: number;\n let isVisibleFromClick = false;\n let didHideDueToDocumentMouseDown = false;\n let didTouchMove = false;\n let ignoreOnFirstUpdate = false;\n let lastTriggerEvent: Event | undefined;\n let currentTransitionEndListener: (event: TransitionEvent) => void;\n let onFirstUpdate: () => void;\n let listeners: ListenerObject[] = [];\n let debouncedOnMouseMove = debounce(onMouseMove, props.interactiveDebounce);\n let currentTarget: Element;\n\n // ===========================================================================\n // 🔑 Public members\n // ===========================================================================\n const id = idCounter++;\n const popperInstance = null;\n const plugins = unique(props.plugins);\n\n const state = {\n // Is the instance currently enabled?\n isEnabled: true,\n // Is the tippy currently showing and not transitioning out?\n isVisible: false,\n // Has the instance been destroyed?\n isDestroyed: false,\n // Is the tippy currently mounted to the DOM?\n isMounted: false,\n // Has the tippy finished transitioning in?\n isShown: false,\n };\n\n const instance: Instance = {\n // properties\n id,\n reference,\n popper: div(),\n popperInstance,\n props,\n state,\n plugins,\n // methods\n clearDelayTimeouts,\n setProps,\n setContent,\n show,\n hide,\n hideWithInteractivity,\n enable,\n disable,\n unmount,\n destroy,\n };\n\n // TODO: Investigate why this early return causes a TDZ error in the tests —\n // it doesn't seem to happen in the browser\n /* istanbul ignore if */\n if (!props.render) {\n if (__DEV__) {\n errorWhen(true, 'render() function has not been supplied.');\n }\n\n return instance;\n }\n\n // ===========================================================================\n // Initial mutations\n // ===========================================================================\n const {popper, onUpdate} = props.render(instance);\n\n popper.setAttribute('data-__NAMESPACE_PREFIX__-root', '');\n popper.id = `__NAMESPACE_PREFIX__-${instance.id}`;\n\n instance.popper = popper;\n reference._tippy = instance;\n popper._tippy = instance;\n\n const pluginsHooks = plugins.map((plugin) => plugin.fn(instance));\n const hasAriaExpanded = reference.hasAttribute('aria-expanded');\n\n addListeners();\n handleAriaExpandedAttribute();\n handleStyles();\n\n invokeHook('onCreate', [instance]);\n\n if (props.showOnCreate) {\n scheduleShow();\n }\n\n // Prevent a tippy with a delay from hiding if the cursor left then returned\n // before it started hiding\n popper.addEventListener('mouseenter', () => {\n if (instance.props.interactive && instance.state.isVisible) {\n instance.clearDelayTimeouts();\n }\n });\n\n popper.addEventListener('mouseleave', () => {\n if (\n instance.props.interactive &&\n instance.props.trigger.indexOf('mouseenter') >= 0\n ) {\n getDocument().addEventListener('mousemove', debouncedOnMouseMove);\n }\n });\n\n return instance;\n\n // ===========================================================================\n // 🔒 Private methods\n // ===========================================================================\n function getNormalizedTouchSettings(): [string | boolean, number] {\n const {touch} = instance.props;\n return Array.isArray(touch) ? touch : [touch, 0];\n }\n\n function getIsCustomTouchBehavior(): boolean {\n return getNormalizedTouchSettings()[0] === 'hold';\n }\n\n function getIsDefaultRenderFn(): boolean {\n // @ts-ignore\n return !!instance.props.render?.$$tippy;\n }\n\n function getCurrentTarget(): Element {\n return currentTarget || reference;\n }\n\n function getDocument(): Document {\n const parent = getCurrentTarget().parentNode as Element;\n return parent ? getOwnerDocument(parent) : document;\n }\n\n function getDefaultTemplateChildren(): PopperChildren {\n return getChildren(popper);\n }\n\n function getDelay(isShow: boolean): number {\n // For touch or keyboard input, force `0` delay for UX reasons\n // Also if the instance is mounted but not visible (transitioning out),\n // ignore delay\n if (\n (instance.state.isMounted && !instance.state.isVisible) ||\n currentInput.isTouch ||\n (lastTriggerEvent && lastTriggerEvent.type === 'focus')\n ) {\n return 0;\n }\n\n return getValueAtIndexOrReturn(\n instance.props.delay,\n isShow ? 0 : 1,\n defaultProps.delay\n );\n }\n\n function handleStyles(fromHide = false): void {\n popper.style.pointerEvents =\n instance.props.interactive && !fromHide ? '' : 'none';\n popper.style.zIndex = `${instance.props.zIndex}`;\n }\n\n function invokeHook(\n hook: keyof LifecycleHooks,\n args: [Instance, any?],\n shouldInvokePropsHook = true\n ): void {\n pluginsHooks.forEach((pluginHooks) => {\n if (pluginHooks[hook]) {\n pluginHooks[hook]!(...args);\n }\n });\n\n if (shouldInvokePropsHook) {\n instance.props[hook](...args);\n }\n }\n\n function handleAriaContentAttribute(): void {\n const {aria} = instance.props;\n\n if (!aria.content) {\n return;\n }\n\n const attr = `aria-${aria.content}`;\n const id = popper.id;\n const nodes = normalizeToArray(instance.props.triggerTarget || reference);\n\n nodes.forEach((node) => {\n const currentValue = node.getAttribute(attr);\n\n if (instance.state.isVisible) {\n node.setAttribute(attr, currentValue ? `${currentValue} ${id}` : id);\n } else {\n const nextValue = currentValue && currentValue.replace(id, '').trim();\n\n if (nextValue) {\n node.setAttribute(attr, nextValue);\n } else {\n node.removeAttribute(attr);\n }\n }\n });\n }\n\n function handleAriaExpandedAttribute(): void {\n if (hasAriaExpanded || !instance.props.aria.expanded) {\n return;\n }\n\n const nodes = normalizeToArray(instance.props.triggerTarget || reference);\n\n nodes.forEach((node) => {\n if (instance.props.interactive) {\n node.setAttribute(\n 'aria-expanded',\n instance.state.isVisible && node === getCurrentTarget()\n ? 'true'\n : 'false'\n );\n } else {\n node.removeAttribute('aria-expanded');\n }\n });\n }\n\n function cleanupInteractiveMouseListeners(): void {\n getDocument().removeEventListener('mousemove', debouncedOnMouseMove);\n mouseMoveListeners = mouseMoveListeners.filter(\n (listener) => listener !== debouncedOnMouseMove\n );\n }\n\n function onDocumentPress(event: MouseEvent | TouchEvent): void {\n // Moved finger to scroll instead of an intentional tap outside\n if (currentInput.isTouch) {\n if (didTouchMove || event.type === 'mousedown') {\n return;\n }\n }\n\n const actualTarget =\n (event.composedPath && event.composedPath()[0]) || event.target;\n\n // Clicked on interactive popper\n if (\n instance.props.interactive &&\n actualContains(popper, actualTarget as Element)\n ) {\n return;\n }\n\n // Clicked on the event listeners target\n if (\n normalizeToArray(instance.props.triggerTarget || reference).some((el) =>\n actualContains(el, actualTarget as Element)\n )\n ) {\n if (currentInput.isTouch) {\n return;\n }\n\n if (\n instance.state.isVisible &&\n instance.props.trigger.indexOf('click') >= 0\n ) {\n return;\n }\n } else {\n invokeHook('onClickOutside', [instance, event]);\n }\n\n if (instance.props.hideOnClick === true) {\n instance.clearDelayTimeouts();\n instance.hide();\n\n // `mousedown` event is fired right before `focus` if pressing the\n // currentTarget. This lets a tippy with `focus` trigger know that it\n // should not show\n didHideDueToDocumentMouseDown = true;\n setTimeout(() => {\n didHideDueToDocumentMouseDown = false;\n });\n\n // The listener gets added in `scheduleShow()`, but this may be hiding it\n // before it shows, and hide()'s early bail-out behavior can prevent it\n // from being cleaned up\n if (!instance.state.isMounted) {\n removeDocumentPress();\n }\n }\n }\n\n function onTouchMove(): void {\n didTouchMove = true;\n }\n\n function onTouchStart(): void {\n didTouchMove = false;\n }\n\n function addDocumentPress(): void {\n const doc = getDocument();\n doc.addEventListener('mousedown', onDocumentPress, true);\n doc.addEventListener('touchend', onDocumentPress, TOUCH_OPTIONS);\n doc.addEventListener('touchstart', onTouchStart, TOUCH_OPTIONS);\n doc.addEventListener('touchmove', onTouchMove, TOUCH_OPTIONS);\n }\n\n function removeDocumentPress(): void {\n const doc = getDocument();\n doc.removeEventListener('mousedown', onDocumentPress, true);\n doc.removeEventListener('touchend', onDocumentPress, TOUCH_OPTIONS);\n doc.removeEventListener('touchstart', onTouchStart, TOUCH_OPTIONS);\n doc.removeEventListener('touchmove', onTouchMove, TOUCH_OPTIONS);\n }\n\n function onTransitionedOut(duration: number, callback: () => void): void {\n onTransitionEnd(duration, () => {\n if (\n !instance.state.isVisible &&\n popper.parentNode &&\n popper.parentNode.contains(popper)\n ) {\n callback();\n }\n });\n }\n\n function onTransitionedIn(duration: number, callback: () => void): void {\n onTransitionEnd(duration, callback);\n }\n\n function onTransitionEnd(duration: number, callback: () => void): void {\n const box = getDefaultTemplateChildren().box;\n\n function listener(event: TransitionEvent): void {\n if (event.target === box) {\n updateTransitionEndListener(box, 'remove', listener);\n callback();\n }\n }\n\n // Make callback synchronous if duration is 0\n // `transitionend` won't fire otherwise\n if (duration === 0) {\n return callback();\n }\n\n updateTransitionEndListener(box, 'remove', currentTransitionEndListener);\n updateTransitionEndListener(box, 'add', listener);\n\n currentTransitionEndListener = listener;\n }\n\n function on(\n eventType: string,\n handler: EventListener,\n options: boolean | Record = false\n ): void {\n const nodes = normalizeToArray(instance.props.triggerTarget || reference);\n nodes.forEach((node) => {\n node.addEventListener(eventType, handler, options);\n listeners.push({node, eventType, handler, options});\n });\n }\n\n function addListeners(): void {\n if (getIsCustomTouchBehavior()) {\n on('touchstart', onTrigger, {passive: true});\n on('touchend', onMouseLeave as EventListener, {passive: true});\n }\n\n splitBySpaces(instance.props.trigger).forEach((eventType) => {\n if (eventType === 'manual') {\n return;\n }\n\n on(eventType, onTrigger);\n\n switch (eventType) {\n case 'mouseenter':\n on('mouseleave', onMouseLeave as EventListener);\n break;\n case 'focus':\n on(isIE11 ? 'focusout' : 'blur', onBlurOrFocusOut as EventListener);\n break;\n case 'focusin':\n on('focusout', onBlurOrFocusOut as EventListener);\n break;\n }\n });\n }\n\n function removeListeners(): void {\n listeners.forEach(({node, eventType, handler, options}: ListenerObject) => {\n node.removeEventListener(eventType, handler, options);\n });\n listeners = [];\n }\n\n function onTrigger(event: Event): void {\n let shouldScheduleClickHide = false;\n\n if (\n !instance.state.isEnabled ||\n isEventListenerStopped(event) ||\n didHideDueToDocumentMouseDown\n ) {\n return;\n }\n\n const wasFocused = lastTriggerEvent?.type === 'focus';\n\n lastTriggerEvent = event;\n currentTarget = event.currentTarget as Element;\n\n handleAriaExpandedAttribute();\n\n if (!instance.state.isVisible && isMouseEvent(event)) {\n // If scrolling, `mouseenter` events can be fired if the cursor lands\n // over a new target, but `mousemove` events don't get fired. This\n // causes interactive tooltips to get stuck open until the cursor is\n // moved\n mouseMoveListeners.forEach((listener) => listener(event));\n }\n\n // Toggle show/hide when clicking click-triggered tooltips\n if (\n event.type === 'click' &&\n (instance.props.trigger.indexOf('mouseenter') < 0 ||\n isVisibleFromClick) &&\n instance.props.hideOnClick !== false &&\n instance.state.isVisible\n ) {\n shouldScheduleClickHide = true;\n } else {\n scheduleShow(event);\n }\n\n if (event.type === 'click') {\n isVisibleFromClick = !shouldScheduleClickHide;\n }\n\n if (shouldScheduleClickHide && !wasFocused) {\n scheduleHide(event);\n }\n }\n\n function onMouseMove(event: MouseEvent): void {\n const target = event.target as Node;\n const isCursorOverReferenceOrPopper =\n getCurrentTarget().contains(target) || popper.contains(target);\n\n if (event.type === 'mousemove' && isCursorOverReferenceOrPopper) {\n return;\n }\n\n const popperTreeData = getNestedPopperTree()\n .concat(popper)\n .map((popper) => {\n const instance = popper._tippy!;\n const state = instance.popperInstance?.state;\n\n if (state) {\n return {\n popperRect: popper.getBoundingClientRect(),\n popperState: state,\n props,\n };\n }\n\n return null;\n })\n .filter(Boolean) as PopperTreeData[];\n\n if (isCursorOutsideInteractiveBorder(popperTreeData, event)) {\n cleanupInteractiveMouseListeners();\n scheduleHide(event);\n }\n }\n\n function onMouseLeave(event: MouseEvent): void {\n const shouldBail =\n isEventListenerStopped(event) ||\n (instance.props.trigger.indexOf('click') >= 0 && isVisibleFromClick);\n\n if (shouldBail) {\n return;\n }\n\n if (instance.props.interactive) {\n instance.hideWithInteractivity(event);\n return;\n }\n\n scheduleHide(event);\n }\n\n function onBlurOrFocusOut(event: FocusEvent): void {\n if (\n instance.props.trigger.indexOf('focusin') < 0 &&\n event.target !== getCurrentTarget()\n ) {\n return;\n }\n\n // If focus was moved to within the popper\n if (\n instance.props.interactive &&\n event.relatedTarget &&\n popper.contains(event.relatedTarget as Element)\n ) {\n return;\n }\n\n scheduleHide(event);\n }\n\n function isEventListenerStopped(event: Event): boolean {\n return currentInput.isTouch\n ? getIsCustomTouchBehavior() !== event.type.indexOf('touch') >= 0\n : false;\n }\n\n function createPopperInstance(): void {\n destroyPopperInstance();\n\n const {\n popperOptions,\n placement,\n offset,\n getReferenceClientRect,\n moveTransition,\n } = instance.props;\n\n const arrow = getIsDefaultRenderFn() ? getChildren(popper).arrow : null;\n\n const computedReference = getReferenceClientRect\n ? {\n getBoundingClientRect: getReferenceClientRect,\n contextElement:\n getReferenceClientRect.contextElement || getCurrentTarget(),\n }\n : reference;\n\n const tippyModifier: Modifier<'$$tippy', Record> = {\n name: '$$tippy',\n enabled: true,\n phase: 'beforeWrite',\n requires: ['computeStyles'],\n fn({state}) {\n if (getIsDefaultRenderFn()) {\n const {box} = getDefaultTemplateChildren();\n\n ['placement', 'reference-hidden', 'escaped'].forEach((attr) => {\n if (attr === 'placement') {\n box.setAttribute('data-placement', state.placement);\n } else {\n if (state.attributes.popper[`data-popper-${attr}`]) {\n box.setAttribute(`data-${attr}`, '');\n } else {\n box.removeAttribute(`data-${attr}`);\n }\n }\n });\n\n state.attributes.popper = {};\n }\n },\n };\n\n type TippyModifier = Modifier<'$$tippy', Record>;\n type ExtendedModifiers = StrictModifiers | Partial;\n\n const modifiers: Array = [\n {\n name: 'offset',\n options: {\n offset,\n },\n },\n {\n name: 'preventOverflow',\n options: {\n padding: {\n top: 2,\n bottom: 2,\n left: 5,\n right: 5,\n },\n },\n },\n {\n name: 'flip',\n options: {\n padding: 5,\n },\n },\n {\n name: 'computeStyles',\n options: {\n adaptive: !moveTransition,\n },\n },\n tippyModifier,\n ];\n\n if (getIsDefaultRenderFn() && arrow) {\n modifiers.push({\n name: 'arrow',\n options: {\n element: arrow,\n padding: 3,\n },\n });\n }\n\n modifiers.push(...(popperOptions?.modifiers || []));\n\n instance.popperInstance = createPopper(\n computedReference,\n popper,\n {\n ...popperOptions,\n placement,\n onFirstUpdate,\n modifiers,\n }\n );\n }\n\n function destroyPopperInstance(): void {\n if (instance.popperInstance) {\n instance.popperInstance.destroy();\n instance.popperInstance = null;\n }\n }\n\n function mount(): void {\n const {appendTo} = instance.props;\n\n let parentNode: any;\n\n // By default, we'll append the popper to the triggerTargets's parentNode so\n // it's directly after the reference element so the elements inside the\n // tippy can be tabbed to\n // If there are clipping issues, the user can specify a different appendTo\n // and ensure focus management is handled correctly manually\n const node = getCurrentTarget();\n\n if (\n (instance.props.interactive && appendTo === TIPPY_DEFAULT_APPEND_TO) ||\n appendTo === 'parent'\n ) {\n parentNode = node.parentNode;\n } else {\n parentNode = invokeWithArgsOrReturn(appendTo, [node]);\n }\n\n // The popper element needs to exist on the DOM before its position can be\n // updated as Popper needs to read its dimensions\n if (!parentNode.contains(popper)) {\n parentNode.appendChild(popper);\n }\n\n instance.state.isMounted = true;\n\n createPopperInstance();\n\n /* istanbul ignore else */\n if (__DEV__) {\n // Accessibility check\n warnWhen(\n instance.props.interactive &&\n appendTo === defaultProps.appendTo &&\n node.nextElementSibling !== popper,\n [\n 'Interactive tippy element may not be accessible via keyboard',\n 'navigation because it is not directly after the reference element',\n 'in the DOM source order.',\n '\\n\\n',\n 'Using a wrapper
or tag around the reference element',\n 'solves this by creating a new parentNode context.',\n '\\n\\n',\n 'Specifying `appendTo: document.body` silences this warning, but it',\n 'assumes you are using a focus management solution to handle',\n 'keyboard navigation.',\n '\\n\\n',\n 'See: https://atomiks.github.io/tippyjs/v6/accessibility/#interactivity',\n ].join(' ')\n );\n }\n }\n\n function getNestedPopperTree(): PopperElement[] {\n return arrayFrom(\n popper.querySelectorAll('[data-__NAMESPACE_PREFIX__-root]')\n );\n }\n\n function scheduleShow(event?: Event): void {\n instance.clearDelayTimeouts();\n\n if (event) {\n invokeHook('onTrigger', [instance, event]);\n }\n\n addDocumentPress();\n\n let delay = getDelay(true);\n const [touchValue, touchDelay] = getNormalizedTouchSettings();\n\n if (currentInput.isTouch && touchValue === 'hold' && touchDelay) {\n delay = touchDelay;\n }\n\n if (delay) {\n showTimeout = setTimeout(() => {\n instance.show();\n }, delay);\n } else {\n instance.show();\n }\n }\n\n function scheduleHide(event: Event): void {\n instance.clearDelayTimeouts();\n\n invokeHook('onUntrigger', [instance, event]);\n\n if (!instance.state.isVisible) {\n removeDocumentPress();\n\n return;\n }\n\n // For interactive tippies, scheduleHide is added to a document.body handler\n // from onMouseLeave so must intercept scheduled hides from mousemove/leave\n // events when trigger contains mouseenter and click, and the tip is\n // currently shown as a result of a click.\n if (\n instance.props.trigger.indexOf('mouseenter') >= 0 &&\n instance.props.trigger.indexOf('click') >= 0 &&\n ['mouseleave', 'mousemove'].indexOf(event.type) >= 0 &&\n isVisibleFromClick\n ) {\n return;\n }\n\n const delay = getDelay(false);\n\n if (delay) {\n hideTimeout = setTimeout(() => {\n if (instance.state.isVisible) {\n instance.hide();\n }\n }, delay);\n } else {\n // Fixes a `transitionend` problem when it fires 1 frame too\n // late sometimes, we don't want hide() to be called.\n scheduleHideAnimationFrame = requestAnimationFrame(() => {\n instance.hide();\n });\n }\n }\n\n // ===========================================================================\n // 🔑 Public methods\n // ===========================================================================\n function enable(): void {\n instance.state.isEnabled = true;\n }\n\n function disable(): void {\n // Disabling the instance should also hide it\n // https://github.com/atomiks/tippy.js-react/issues/106\n instance.hide();\n instance.state.isEnabled = false;\n }\n\n function clearDelayTimeouts(): void {\n clearTimeout(showTimeout);\n clearTimeout(hideTimeout);\n cancelAnimationFrame(scheduleHideAnimationFrame);\n }\n\n function setProps(partialProps: Partial): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('setProps'));\n }\n\n if (instance.state.isDestroyed) {\n return;\n }\n\n invokeHook('onBeforeUpdate', [instance, partialProps]);\n\n removeListeners();\n\n const prevProps = instance.props;\n const nextProps = evaluateProps(reference, {\n ...prevProps,\n ...removeUndefinedProps(partialProps),\n ignoreAttributes: true,\n });\n\n instance.props = nextProps;\n\n addListeners();\n\n if (prevProps.interactiveDebounce !== nextProps.interactiveDebounce) {\n cleanupInteractiveMouseListeners();\n debouncedOnMouseMove = debounce(\n onMouseMove,\n nextProps.interactiveDebounce\n );\n }\n\n // Ensure stale aria-expanded attributes are removed\n if (prevProps.triggerTarget && !nextProps.triggerTarget) {\n normalizeToArray(prevProps.triggerTarget).forEach((node) => {\n node.removeAttribute('aria-expanded');\n });\n } else if (nextProps.triggerTarget) {\n reference.removeAttribute('aria-expanded');\n }\n\n handleAriaExpandedAttribute();\n handleStyles();\n\n if (onUpdate) {\n onUpdate(prevProps, nextProps);\n }\n\n if (instance.popperInstance) {\n createPopperInstance();\n\n // Fixes an issue with nested tippies if they are all getting re-rendered,\n // and the nested ones get re-rendered first.\n // https://github.com/atomiks/tippyjs-react/issues/177\n // TODO: find a cleaner / more efficient solution(!)\n getNestedPopperTree().forEach((nestedPopper) => {\n // React (and other UI libs likely) requires a rAF wrapper as it flushes\n // its work in one\n requestAnimationFrame(nestedPopper._tippy!.popperInstance!.forceUpdate);\n });\n }\n\n invokeHook('onAfterUpdate', [instance, partialProps]);\n }\n\n function setContent(content: Content): void {\n instance.setProps({content});\n }\n\n function show(): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('show'));\n }\n\n // Early bail-out\n const isAlreadyVisible = instance.state.isVisible;\n const isDestroyed = instance.state.isDestroyed;\n const isDisabled = !instance.state.isEnabled;\n const isTouchAndTouchDisabled =\n currentInput.isTouch && !instance.props.touch;\n const duration = getValueAtIndexOrReturn(\n instance.props.duration,\n 0,\n defaultProps.duration\n );\n\n if (\n isAlreadyVisible ||\n isDestroyed ||\n isDisabled ||\n isTouchAndTouchDisabled\n ) {\n return;\n }\n\n // Normalize `disabled` behavior across browsers.\n // Firefox allows events on disabled elements, but Chrome doesn't.\n // Using a wrapper element (i.e. ) is recommended.\n if (getCurrentTarget().hasAttribute('disabled')) {\n return;\n }\n\n invokeHook('onShow', [instance], false);\n if (instance.props.onShow(instance) === false) {\n return;\n }\n\n instance.state.isVisible = true;\n\n if (getIsDefaultRenderFn()) {\n popper.style.visibility = 'visible';\n }\n\n handleStyles();\n addDocumentPress();\n\n if (!instance.state.isMounted) {\n popper.style.transition = 'none';\n }\n\n // If flipping to the opposite side after hiding at least once, the\n // animation will use the wrong placement without resetting the duration\n if (getIsDefaultRenderFn()) {\n const {box, content} = getDefaultTemplateChildren();\n setTransitionDuration([box, content], 0);\n }\n\n onFirstUpdate = (): void => {\n if (!instance.state.isVisible || ignoreOnFirstUpdate) {\n return;\n }\n\n ignoreOnFirstUpdate = true;\n\n // reflow\n void popper.offsetHeight;\n\n popper.style.transition = instance.props.moveTransition;\n\n if (getIsDefaultRenderFn() && instance.props.animation) {\n const {box, content} = getDefaultTemplateChildren();\n setTransitionDuration([box, content], duration);\n setVisibilityState([box, content], 'visible');\n }\n\n handleAriaContentAttribute();\n handleAriaExpandedAttribute();\n\n pushIfUnique(mountedInstances, instance);\n\n // certain modifiers (e.g. `maxSize`) require a second update after the\n // popper has been positioned for the first time\n instance.popperInstance?.forceUpdate();\n\n invokeHook('onMount', [instance]);\n\n if (instance.props.animation && getIsDefaultRenderFn()) {\n onTransitionedIn(duration, () => {\n instance.state.isShown = true;\n invokeHook('onShown', [instance]);\n });\n }\n };\n\n mount();\n }\n\n function hide(): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('hide'));\n }\n\n // Early bail-out\n const isAlreadyHidden = !instance.state.isVisible;\n const isDestroyed = instance.state.isDestroyed;\n const isDisabled = !instance.state.isEnabled;\n const duration = getValueAtIndexOrReturn(\n instance.props.duration,\n 1,\n defaultProps.duration\n );\n\n if (isAlreadyHidden || isDestroyed || isDisabled) {\n return;\n }\n\n invokeHook('onHide', [instance], false);\n if (instance.props.onHide(instance) === false) {\n return;\n }\n\n instance.state.isVisible = false;\n instance.state.isShown = false;\n ignoreOnFirstUpdate = false;\n isVisibleFromClick = false;\n\n if (getIsDefaultRenderFn()) {\n popper.style.visibility = 'hidden';\n }\n\n cleanupInteractiveMouseListeners();\n removeDocumentPress();\n handleStyles(true);\n\n if (getIsDefaultRenderFn()) {\n const {box, content} = getDefaultTemplateChildren();\n\n if (instance.props.animation) {\n setTransitionDuration([box, content], duration);\n setVisibilityState([box, content], 'hidden');\n }\n }\n\n handleAriaContentAttribute();\n handleAriaExpandedAttribute();\n\n if (instance.props.animation) {\n if (getIsDefaultRenderFn()) {\n onTransitionedOut(duration, instance.unmount);\n }\n } else {\n instance.unmount();\n }\n }\n\n function hideWithInteractivity(event: MouseEvent): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(\n instance.state.isDestroyed,\n createMemoryLeakWarning('hideWithInteractivity')\n );\n }\n\n getDocument().addEventListener('mousemove', debouncedOnMouseMove);\n pushIfUnique(mouseMoveListeners, debouncedOnMouseMove);\n debouncedOnMouseMove(event);\n }\n\n function unmount(): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('unmount'));\n }\n\n if (instance.state.isVisible) {\n instance.hide();\n }\n\n if (!instance.state.isMounted) {\n return;\n }\n\n destroyPopperInstance();\n\n // If a popper is not interactive, it will be appended outside the popper\n // tree by default. This seems mainly for interactive tippies, but we should\n // find a workaround if possible\n getNestedPopperTree().forEach((nestedPopper) => {\n nestedPopper._tippy!.unmount();\n });\n\n if (popper.parentNode) {\n popper.parentNode.removeChild(popper);\n }\n\n mountedInstances = mountedInstances.filter((i) => i !== instance);\n\n instance.state.isMounted = false;\n invokeHook('onHidden', [instance]);\n }\n\n function destroy(): void {\n /* istanbul ignore else */\n if (__DEV__) {\n warnWhen(instance.state.isDestroyed, createMemoryLeakWarning('destroy'));\n }\n\n if (instance.state.isDestroyed) {\n return;\n }\n\n instance.clearDelayTimeouts();\n instance.unmount();\n\n removeListeners();\n\n delete reference._tippy;\n\n instance.state.isDestroyed = true;\n\n invokeHook('onDestroy', [instance]);\n }\n}\n","import bindGlobalEventListeners, {\n currentInput,\n} from './bindGlobalEventListeners';\nimport createTippy, {mountedInstances} from './createTippy';\nimport {getArrayOfElements, isElement, isReferenceElement} from './dom-utils';\nimport {defaultProps, setDefaultProps, validateProps} from './props';\nimport {HideAll, HideAllOptions, Instance, Props, Targets} from './types';\nimport {validateTargets, warnWhen} from './validation';\n\nfunction tippy(\n targets: Targets,\n optionalProps: Partial = {}\n): Instance | Instance[] {\n const plugins = defaultProps.plugins.concat(optionalProps.plugins || []);\n\n /* istanbul ignore else */\n if (__DEV__) {\n validateTargets(targets);\n validateProps(optionalProps, plugins);\n }\n\n bindGlobalEventListeners();\n\n const passedProps: Partial = {...optionalProps, plugins};\n\n const elements = getArrayOfElements(targets);\n\n /* istanbul ignore else */\n if (__DEV__) {\n const isSingleContentElement = isElement(passedProps.content);\n const isMoreThanOneReferenceElement = elements.length > 1;\n warnWhen(\n isSingleContentElement && isMoreThanOneReferenceElement,\n [\n 'tippy() was passed an Element as the `content` prop, but more than',\n 'one tippy instance was created by this invocation. This means the',\n 'content element will only be appended to the last tippy instance.',\n '\\n\\n',\n 'Instead, pass the .innerHTML of the element, or use a function that',\n 'returns a cloned version of the element instead.',\n '\\n\\n',\n '1) content: element.innerHTML\\n',\n '2) content: () => element.cloneNode(true)',\n ].join(' ')\n );\n }\n\n const instances = elements.reduce(\n (acc, reference): Instance[] => {\n const instance = reference && createTippy(reference, passedProps);\n\n if (instance) {\n acc.push(instance);\n }\n\n return acc;\n },\n []\n );\n\n return isElement(targets) ? instances[0] : instances;\n}\n\ntippy.defaultProps = defaultProps;\ntippy.setDefaultProps = setDefaultProps;\ntippy.currentInput = currentInput;\n\nexport default tippy;\n\nexport const hideAll: HideAll = ({\n exclude: excludedReferenceOrInstance,\n duration,\n}: HideAllOptions = {}) => {\n mountedInstances.forEach((instance) => {\n let isExcluded = false;\n\n if (excludedReferenceOrInstance) {\n isExcluded = isReferenceElement(excludedReferenceOrInstance)\n ? instance.reference === excludedReferenceOrInstance\n : instance.popper === (excludedReferenceOrInstance as Instance).popper;\n }\n\n if (!isExcluded) {\n const originalDuration = instance.props.duration;\n\n instance.setProps({duration});\n instance.hide();\n\n if (!instance.state.isDestroyed) {\n instance.setProps({duration: originalDuration});\n }\n }\n });\n};\n","import tippy from '..';\nimport {div} from '../dom-utils';\nimport {\n CreateSingleton,\n Plugin,\n CreateSingletonProps,\n ReferenceElement,\n CreateSingletonInstance,\n Instance,\n Props,\n} from '../types';\nimport {normalizeToArray, removeProperties} from '../utils';\nimport {errorWhen} from '../validation';\nimport {applyStyles, Modifier} from '@popperjs/core';\n\n// The default `applyStyles` modifier has a cleanup function that gets called\n// every time the popper is destroyed (i.e. a new target), removing the styles\n// and causing transitions to break for singletons when the console is open, but\n// most notably for non-transform styles being used, `gpuAcceleration: false`.\nconst applyStylesModifier: Modifier<'applyStyles', Record> = {\n ...applyStyles,\n effect({state}) {\n const initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0',\n },\n arrow: {\n position: 'absolute',\n },\n reference: {},\n };\n\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n // intentionally return no cleanup function\n // return () => { ... }\n },\n};\n\nconst createSingleton: CreateSingleton = (\n tippyInstances,\n optionalProps = {}\n) => {\n /* istanbul ignore else */\n if (__DEV__) {\n errorWhen(\n !Array.isArray(tippyInstances),\n [\n 'The first argument passed to createSingleton() must be an array of',\n 'tippy instances. The passed value was',\n String(tippyInstances),\n ].join(' ')\n );\n }\n\n let individualInstances = tippyInstances;\n let references: Array = [];\n let triggerTargets: Array = [];\n let currentTarget: Element | null;\n let overrides = optionalProps.overrides;\n let interceptSetPropsCleanups: Array<() => void> = [];\n let shownOnCreate = false;\n\n function setTriggerTargets(): void {\n triggerTargets = individualInstances\n .map((instance) =>\n normalizeToArray(instance.props.triggerTarget || instance.reference)\n )\n .reduce((acc, item) => acc.concat(item), []);\n }\n\n function setReferences(): void {\n references = individualInstances.map((instance) => instance.reference);\n }\n\n function enableInstances(isEnabled: boolean): void {\n individualInstances.forEach((instance) => {\n if (isEnabled) {\n instance.enable();\n } else {\n instance.disable();\n }\n });\n }\n\n function interceptSetProps(singleton: Instance): Array<() => void> {\n return individualInstances.map((instance) => {\n const originalSetProps = instance.setProps;\n\n instance.setProps = (props): void => {\n originalSetProps(props);\n\n if (instance.reference === currentTarget) {\n singleton.setProps(props);\n }\n };\n\n return (): void => {\n instance.setProps = originalSetProps;\n };\n });\n }\n\n // have to pass singleton, as it maybe undefined on first call\n function prepareInstance(\n singleton: Instance,\n target: ReferenceElement\n ): void {\n const index = triggerTargets.indexOf(target);\n\n // bail-out\n if (target === currentTarget) {\n return;\n }\n\n currentTarget = target;\n\n const overrideProps: Partial = (overrides || [])\n .concat('content')\n .reduce((acc, prop) => {\n (acc as any)[prop] = individualInstances[index].props[prop];\n return acc;\n }, {});\n\n singleton.setProps({\n ...overrideProps,\n getReferenceClientRect:\n typeof overrideProps.getReferenceClientRect === 'function'\n ? overrideProps.getReferenceClientRect\n : (): ClientRect => references[index]?.getBoundingClientRect(),\n });\n }\n\n enableInstances(false);\n setReferences();\n setTriggerTargets();\n\n const plugin: Plugin = {\n fn() {\n return {\n onDestroy(): void {\n enableInstances(true);\n },\n onHidden(): void {\n currentTarget = null;\n },\n onClickOutside(instance): void {\n if (instance.props.showOnCreate && !shownOnCreate) {\n shownOnCreate = true;\n currentTarget = null;\n }\n },\n onShow(instance): void {\n if (instance.props.showOnCreate && !shownOnCreate) {\n shownOnCreate = true;\n prepareInstance(instance, references[0]);\n }\n },\n onTrigger(instance, event): void {\n prepareInstance(instance, event.currentTarget as Element);\n },\n };\n },\n };\n\n const singleton = tippy(div(), {\n ...removeProperties(optionalProps, ['overrides']),\n plugins: [plugin, ...(optionalProps.plugins || [])],\n triggerTarget: triggerTargets,\n popperOptions: {\n ...optionalProps.popperOptions,\n modifiers: [\n ...(optionalProps.popperOptions?.modifiers || []),\n applyStylesModifier,\n ],\n },\n }) as CreateSingletonInstance;\n\n const originalShow = singleton.show;\n\n singleton.show = (target?: ReferenceElement | Instance | number): void => {\n originalShow();\n\n // first time, showOnCreate or programmatic call with no params\n // default to showing first instance\n if (!currentTarget && target == null) {\n return prepareInstance(singleton, references[0]);\n }\n\n // triggered from event (do nothing as prepareInstance already called by onTrigger)\n // programmatic call with no params when already visible (do nothing again)\n if (currentTarget && target == null) {\n return;\n }\n\n // target is index of instance\n if (typeof target === 'number') {\n return (\n references[target] && prepareInstance(singleton, references[target])\n );\n }\n\n // target is a child tippy instance\n if (individualInstances.indexOf(target as Instance) >= 0) {\n const ref = (target as Instance).reference;\n return prepareInstance(singleton, ref);\n }\n\n // target is a ReferenceElement\n if (references.indexOf(target as ReferenceElement) >= 0) {\n return prepareInstance(singleton, target as ReferenceElement);\n }\n };\n\n singleton.showNext = (): void => {\n const first = references[0];\n if (!currentTarget) {\n return singleton.show(0);\n }\n const index = references.indexOf(currentTarget);\n singleton.show(references[index + 1] || first);\n };\n\n singleton.showPrevious = (): void => {\n const last = references[references.length - 1];\n if (!currentTarget) {\n return singleton.show(last);\n }\n const index = references.indexOf(currentTarget);\n const target = references[index - 1] || last;\n singleton.show(target);\n };\n\n const originalSetProps = singleton.setProps;\n\n singleton.setProps = (props): void => {\n overrides = props.overrides || overrides;\n originalSetProps(props);\n };\n\n singleton.setInstances = (nextInstances): void => {\n enableInstances(true);\n interceptSetPropsCleanups.forEach((fn) => fn());\n\n individualInstances = nextInstances;\n\n enableInstances(false);\n setReferences();\n setTriggerTargets();\n interceptSetPropsCleanups = interceptSetProps(singleton);\n\n singleton.setProps({triggerTarget: triggerTargets});\n };\n\n interceptSetPropsCleanups = interceptSetProps(singleton);\n\n return singleton;\n};\n\nexport default createSingleton;\n","import {getOwnerDocument, isMouseEvent} from '../dom-utils';\nimport {FollowCursor, Instance} from '../types';\n\nlet mouseCoords = {clientX: 0, clientY: 0};\nlet activeInstances: Array<{instance: Instance; doc: Document}> = [];\n\nfunction storeMouseCoords({clientX, clientY}: MouseEvent): void {\n mouseCoords = {clientX, clientY};\n}\n\nfunction addMouseCoordsListener(doc: Document): void {\n doc.addEventListener('mousemove', storeMouseCoords);\n}\n\nfunction removeMouseCoordsListener(doc: Document): void {\n doc.removeEventListener('mousemove', storeMouseCoords);\n}\n\nconst followCursor: FollowCursor = {\n name: 'followCursor',\n defaultValue: false,\n fn(instance) {\n const reference = instance.reference;\n const doc = getOwnerDocument(instance.props.triggerTarget || reference);\n\n let isInternalUpdate = false;\n let wasFocusEvent = false;\n let isUnmounted = true;\n let prevProps = instance.props;\n\n function getIsInitialBehavior(): boolean {\n return (\n instance.props.followCursor === 'initial' && instance.state.isVisible\n );\n }\n\n function addListener(): void {\n doc.addEventListener('mousemove', onMouseMove);\n }\n\n function removeListener(): void {\n doc.removeEventListener('mousemove', onMouseMove);\n }\n\n function unsetGetReferenceClientRect(): void {\n isInternalUpdate = true;\n instance.setProps({getReferenceClientRect: null});\n isInternalUpdate = false;\n }\n\n function onMouseMove(event: MouseEvent): void {\n // If the instance is interactive, avoid updating the position unless it's\n // over the reference element\n const isCursorOverReference = event.target\n ? reference.contains(event.target as Node)\n : true;\n const {followCursor} = instance.props;\n const {clientX, clientY} = event;\n\n const rect = reference.getBoundingClientRect();\n const relativeX = clientX - rect.left;\n const relativeY = clientY - rect.top;\n\n if (isCursorOverReference || !instance.props.interactive) {\n instance.setProps({\n // @ts-ignore - unneeded DOMRect properties\n getReferenceClientRect() {\n const rect = reference.getBoundingClientRect();\n\n let x = clientX;\n let y = clientY;\n\n if (followCursor === 'initial') {\n x = rect.left + relativeX;\n y = rect.top + relativeY;\n }\n\n const top = followCursor === 'horizontal' ? rect.top : y;\n const right = followCursor === 'vertical' ? rect.right : x;\n const bottom = followCursor === 'horizontal' ? rect.bottom : y;\n const left = followCursor === 'vertical' ? rect.left : x;\n\n return {\n width: right - left,\n height: bottom - top,\n top,\n right,\n bottom,\n left,\n };\n },\n });\n }\n }\n\n function create(): void {\n if (instance.props.followCursor) {\n activeInstances.push({instance, doc});\n addMouseCoordsListener(doc);\n }\n }\n\n function destroy(): void {\n activeInstances = activeInstances.filter(\n (data) => data.instance !== instance\n );\n\n if (activeInstances.filter((data) => data.doc === doc).length === 0) {\n removeMouseCoordsListener(doc);\n }\n }\n\n return {\n onCreate: create,\n onDestroy: destroy,\n onBeforeUpdate(): void {\n prevProps = instance.props;\n },\n onAfterUpdate(_, {followCursor}): void {\n if (isInternalUpdate) {\n return;\n }\n\n if (\n followCursor !== undefined &&\n prevProps.followCursor !== followCursor\n ) {\n destroy();\n\n if (followCursor) {\n create();\n\n if (\n instance.state.isMounted &&\n !wasFocusEvent &&\n !getIsInitialBehavior()\n ) {\n addListener();\n }\n } else {\n removeListener();\n unsetGetReferenceClientRect();\n }\n }\n },\n onMount(): void {\n if (instance.props.followCursor && !wasFocusEvent) {\n if (isUnmounted) {\n onMouseMove(mouseCoords as MouseEvent);\n isUnmounted = false;\n }\n\n if (!getIsInitialBehavior()) {\n addListener();\n }\n }\n },\n onTrigger(_, event): void {\n if (isMouseEvent(event)) {\n mouseCoords = {clientX: event.clientX, clientY: event.clientY};\n }\n wasFocusEvent = event.type === 'focus';\n },\n onHidden(): void {\n if (instance.props.followCursor) {\n unsetGetReferenceClientRect();\n removeListener();\n isUnmounted = true;\n }\n },\n };\n },\n};\n\nexport default followCursor;\n","import tippy from '../src';\nimport {render} from '../src/template';\n\ntippy.setDefaultProps({render});\n\nexport {default, hideAll} from '../src';\nexport {default as createSingleton} from '../src/addons/createSingleton';\nexport {default as delegate} from '../src/addons/delegate';\nexport {default as animateFill} from '../src/plugins/animateFill';\nexport {default as followCursor} from '../src/plugins/followCursor';\nexport {default as inlinePositioning} from '../src/plugins/inlinePositioning';\nexport {default as sticky} from '../src/plugins/sticky';\nexport {ROUND_ARROW as roundArrow} from '../src/constants';\n","var map = {\n\t\"./bs/index.js\": [\n\t\t99137,\n\t\t137\n\t],\n\t\"./de/index.js\": [\n\t\t30677,\n\t\t677\n\t],\n\t\"./en/index.js\": [\n\t\t19577\n\t],\n\t\"./fr/index.js\": [\n\t\t78206,\n\t\t206\n\t],\n\t\"./pl/index.js\": [\n\t\t56842,\n\t\t461\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(() => {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(1).map(__webpack_require__.e)).then(() => {\n\t\treturn __webpack_require__(id);\n\t});\n}\nwebpackAsyncContext.keys = () => (Object.keys(map));\nwebpackAsyncContext.id = 69681;\nmodule.exports = webpackAsyncContext;","var E = require('./index.js');\nmodule.exports = new E();\n","/* eslint-disable */\n/* tslint:disable */\n/*\n * ---------------------------------------------------------------\n * ## THIS FILE WAS GENERATED VIA SWAGGER-TYPESCRIPT-API ##\n * ## ##\n * ## AUTHOR: acacode ##\n * ## SOURCE: https://github.com/acacode/swagger-typescript-api ##\n * ---------------------------------------------------------------\n */\n\nexport interface OAuth2Client {\n /** ID for the OAuth2 client */\n id?: string;\n /** Name of the OAuth2 client */\n name?: string;\n /** URL to the OAuth2 client's privacy policy */\n privacy_policy_url?: string;\n /** URL to the OAuth2 client's terms of service */\n terms_url?: string;\n /** URL to the OAuth2 client's icon */\n icon?: string;\n /** Whether the OAuth2 client is trusted */\n trusted?: boolean;\n}\n\nexport interface GetOAuth2ClientResponse {\n oauth2_client?: OAuth2Client;\n}\n\n/**\n * Actor\n * describes a user or robot that created or updated a resource\n */\nexport interface Actor {\n /** @example \"uDsu0j19\" */\n user_id?: string;\n /**\n * @default \"user\"\n * @example \"user\"\n */\n type: \"user\" | \"robot\" | \"system\";\n /** describes the source of an actor */\n source?: ActorSource;\n}\n\n/**\n * ActorSource\n * describes the source of an actor\n */\nexport interface ActorSource {\n /** @example \"oauth\" */\n type?: \"oauth\" | \"import\" | \"email\" | \"agent\";\n /**\n * client ID if the resource was created via oauth2 app\n * @example \"oczapier\"\n */\n client_id?: string;\n /**\n * import ID if the resource was created by an import\n * @example \"bf1b9f76-3f95-42fc-bd7f-050b2f5f4197\"\n */\n import_id?: string;\n /**\n * agent ID if the resource was created by an agent\n * @example \"bf1b9f76-3f95-42fc-bd7f-050b2f5f4197\"\n */\n agent_id?: string;\n /**\n * email address if the resource was created via an email\n * @example \"somebody@example.com\"\n */\n email_addr?: string;\n /**\n * whether the email sender was verified\n * @example false\n */\n email_verified?: boolean;\n}\n\n/** RobotUser */\nexport interface RobotUser {\n /** @example \"urgh0001\" */\n id?: string;\n /** @example \"GitHub\" */\n display_name?: string;\n profile_image?: string;\n}\n\n/** User */\nexport interface User {\n /** @example \"u-dsu0j19\" */\n id?: string;\n /** @example \"user@example.com\" */\n email?: string;\n /** @example true */\n email_confirmed?: boolean;\n /** @example \"John\" */\n first_name?: string;\n /** @example \"Smith\" */\n last_name?: string;\n /** @example \"pete\" */\n display_name?: string;\n /** @example \"https://s3..../avatar.png\" */\n profile_image?: string;\n /** @example \"https://s3..../avatar.png\" */\n thumbnail_image?: string;\n /** @example \"red\" */\n color?: \"red\" | \"darkred\" | \"green\" | \"darkgreen\" | \"blue\" | \"darkblue\";\n status?: \"active\" | \"suspended\";\n teams: TeamWithRoleAndStatus[];\n /** unix timestamp in seconds */\n time_created?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n time_updated?: STime;\n current_project?: string;\n /**\n * user's timezone\n * @example \"America/Los_Angeles\"\n */\n timezone_id?: string;\n /**\n * whether the user's timezone is automatically set by the superthread app\n * @example true\n */\n autodetect_timezone_id?: boolean | null;\n /**\n * user's preferred locale\n * @example \"en\"\n */\n locale?: string;\n transcription_keywords?: string[];\n}\n\nexport type TeamMember = User & {\n role?: TeamMemberRole;\n status?: TeamMemberStatus;\n};\n\nexport interface SignupAnswers {\n /**\n * @maxLength 100\n * @example \"product_manager\"\n */\n role?: string | null;\n /**\n * @maxLength 100\n * @example \"1-10\"\n */\n team_size?: string | null;\n /** @example [\"marketing\",\"design\"] */\n work_type?: string[] | null;\n /**\n * @maxLength 100\n * @example \"1-10\"\n */\n company_size?: string | null;\n /**\n * @maxLength 100\n * @example \"startup\"\n */\n company_type?: string | null;\n /** @example [\"marketing\",\"design\"] */\n company_departments?: string[] | null;\n}\n\nexport interface GetUserResponse {\n user?: User;\n token_outdated?: boolean;\n /** was the token used for this request privileged? privileged tokens are required for certain operations (update email) and are obtained from a fresh login (not a refresh). */\n token_privileged?: boolean;\n}\n\nexport interface AddUserTeamResponse {\n accepted_invite?: TeamInviteForUser;\n}\n\nexport interface GetFavouritesResponse {\n favourites?: Favourite[];\n}\n\nexport interface AddFavouriteRequest {\n /**\n * id of parent folder to nest this resource under (skip for root)\n * @example \"df3fcdf3-88ad-4c28-829a-dc9f94a20dfd\"\n */\n parent_id?: string;\n /**\n * a position where the object should be placed in the folder. omitting will append at the end.\n * @example 3\n */\n position?: number | null;\n /** @example \"My card\" */\n title: string;\n /**\n * type of the resource that's added\n * @example \"card\"\n */\n resource_type: \"board\" | \"card\" | \"page\" | \"view\" | \"sprint\" | \"member\" | \"folder\" | \"epic\";\n /**\n * id of the resource that's added (does not apply if type is 'folder')\n * @example \"7\"\n */\n resource_id?: string;\n}\n\nexport interface AddFavouriteResponse {\n favourites?: Favourite[];\n}\n\nexport interface UpdateFavouriteRequest {\n /**\n * id of parent to nest this resource under. empty string implies root.\n * @example \"2\"\n */\n parent_id?: string | null;\n /**\n * position where the resource should be placed in its parent\n * @example 0\n */\n position?: number | null;\n /**\n * allows\n * @example \"New folder title\"\n */\n title?: string | null;\n}\n\nexport interface UpdateUserRequest {\n /** @example \"John\" */\n first_name?: string | null;\n /** @example \"Smith\" */\n last_name?: string | null;\n /**\n * @minLength 1\n * @example \"pete\"\n */\n display_name?: string | null;\n /** @example \"https://s3..../avatar.png\" */\n profile_image?: string | null;\n /** @example \"https://s3..../avatar.png\" */\n thumbnail_image?: string | null;\n /** @example \"#023020\" */\n color?: string | null;\n signup_answers?: SignupAnswers | null;\n /** @example \"America/Los_Angeles\" */\n timezone_id?: TimezoneID | null;\n /** @example true */\n autodetect_timezone_id?: boolean | null;\n /** @example \"en\" */\n locale?: string | null;\n transcription_keywords?: string[] | null;\n}\n\nexport interface UpdateUserResponse {\n user?: User;\n}\n\nexport interface SendUpdateUserEmailCodeRequest {\n /**\n * new email address to send the code to\n * @example \"user@domain.com\"\n */\n email: string;\n}\n\nexport interface UpdateUserEmailRequest {\n /**\n * this must match the address the code was sent to\n * @example \"user@domain.com\"\n */\n email: string;\n /**\n * code sent to new email inbox via /users/{user_id}/email/code endpoint\n * @example \"123456\"\n */\n code: string;\n}\n\nexport interface SubmitUserSignupAnswersRequest {\n signup_answers?: SignupAnswers;\n}\n\nexport interface CreateImportUsersRequest {\n import_users?: ImportUser[];\n}\n\nexport interface CreateImportUsersResponse {\n /** ordered user ids */\n user_ids?: string[];\n}\n\nexport interface ImportUser {\n email?: string;\n display_name?: string;\n}\n\nexport interface Favourite {\n title?: string;\n project_id?: string;\n resource_type?: string;\n resource_id?: string;\n /** used for sprints */\n start_date?: STime;\n /** used for sprints */\n end_date?: STime;\n children?: Favourite[];\n}\n\nexport interface GetPendingInvitesForTeamResponse {\n pending_invites?: TeamInviteForTeam[];\n}\n\nexport interface GetPendingInvitesForUserResponse {\n pending_invites?: TeamInviteForUser[];\n}\n\nexport interface Team {\n /** team archive status */\n archived?: Archived;\n /** @example \"t-iwquhs1\" */\n id?: string;\n /** @example \"apple\" */\n sub_domain?: string;\n /** @example \"Apple Backend\" */\n team_name?: string;\n /** @example \"Apple Inc\" */\n company_name?: string;\n /** @example \"apple.com\" */\n email_domain?: string;\n /** @example \"u-dsu0j19\" */\n creator_user_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n trashed?: Trashed;\n logo?: Image;\n /** @example \"free\" */\n subscription_plan_id?: string;\n features?: TeamFeature[];\n limits?: TeamLimit[];\n}\n\nexport type TeamWithRoleAndStatus = Team & {\n role?: TeamMemberRole;\n status?: TeamMemberStatus;\n /** list of feature flags enabled for the user in the team */\n flags?: string[];\n};\n\nexport interface CreateTeamRequest {\n /** @example \"Apple Backend\" */\n team_name: string;\n /** @example \"apple\" */\n sub_domain?: string;\n /** @example \"Apple Inc\" */\n company_name?: string;\n /** @example \"apple.com\" */\n email_domain?: string;\n}\n\nexport interface CreateTeamResponse {\n team?: Team;\n}\n\nexport interface GetTeamResponse {\n team?: Team;\n}\n\nexport interface UpdateTeamRequest {\n /**\n * Archive this team. Note that this is not reversible via the API\n * @example true\n */\n archived?: boolean | null;\n /** @example \"apple\" */\n sub_domain?: string | null;\n /** @example \"Apple Backend\" */\n team_name?: string | null;\n /** @example \"Apple Inc\" */\n company_name?: string | null;\n /** @example \"apple.com\" */\n email_domain?: string | null;\n team_logo?: Image | null;\n}\n\nexport interface UpdateTeamResponse {\n team?: Team;\n}\n\nexport interface GetTeamMembersResponse {\n members?: TeamMember[];\n invited?: TeamMember[];\n inactive?: TeamMember[];\n robots?: RobotUser[];\n}\n\nexport interface UpdateTeamMemberRequest {\n role?: TeamMemberRole;\n}\n\nexport interface UpdateTeamMemberResponse {\n member?: TeamMember;\n}\n\nexport interface RemoveTeamMemberResponse {\n removed_member?: TeamMember;\n}\n\nexport interface TeamInvite {\n /** @example \"t921j9j1\" */\n team_id?: string;\n /** @example \"someuser@example.org\" */\n invitee_email?: string;\n /** @example \"ud93joids\" */\n invitee_user_id?: string;\n invitee_role?: TeamMemberRole;\n invitee_status?: TeamMemberStatus;\n /** @example \"ud91jdars\" */\n sender_user_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_accepted?: STime;\n /** @example \"1\" */\n redirect_project_id?: string;\n}\n\nexport type TeamInviteForUser = TeamInvite & {\n /** @example \"Human Resources\" */\n team_name?: string;\n};\n\nexport type TeamInviteForTeam = TeamInvite;\n\nexport interface CreateTeamInvitesRequest {\n /**\n * @maxItems 100\n * @minItems 1\n */\n invitees: CreateTeamInviteRequest[];\n}\n\nexport interface CreateTeamInviteRequest {\n invitee_email?: string;\n /** Optional. Defaults to 'member'. */\n invitee_role?: TeamMemberRole;\n /**\n * Optional. List of project IDs to add the member to.\n * @maxItems 20\n * @uniqueItems true\n */\n project_ids?: string[];\n /**\n * Optional. Project ID to redirect the invitee to if they click the invite link. You must add the invitee to the project separately after making this request.\n * @example \"1\"\n */\n redirect_project_id?: string;\n}\n\nexport interface CreateTeamInvitesResponse {\n team_invites?: TeamInvite[];\n}\n\nexport interface DeleteTeamInvitesRequest {\n /**\n * deprecated\n * @example [\"user1@example.org\",\"user2@example.org\"]\n */\n invitee_emails?: string[];\n /** @example [\"u123abc\",\"u789xyz\"] */\n invitee_user_ids?: string[];\n}\n\nexport interface DeleteTeamInvitesResponse {\n /** @example [\"u123abc\",\"u789xyz\"] */\n deleted_invite_user_ids?: string[];\n}\n\nexport interface TeamFeature {\n /** unique identifier for the feature */\n id?: string;\n /** @example true */\n enabled: boolean;\n /** unix timestamp in seconds */\n time_enabled?: STime;\n /** @example true */\n toggleable: boolean;\n}\n\nexport interface GetTeamFeaturesResponse {\n features?: TeamFeature[];\n limits?: TeamLimit[];\n token_outdated?: boolean;\n}\n\nexport interface SetTeamFeatureRequest {\n /** @example true */\n enabled: boolean;\n}\n\nexport interface SetTeamFeatureResponse {\n feature?: TeamFeature;\n}\n\nexport interface TeamLimit {\n /** unique identifier for the limit */\n id?: string;\n /** @example \"2\" */\n limit_value?: string;\n}\n\nexport interface GetOAuthRedirectResponse {\n /** @example \"https://auth.superthread.com/authorize?client_id=abc123\" */\n url?: string;\n}\n\nexport interface Project {\n /** @example \"421\" */\n id?: string;\n /** @example \"tDsu0j19\" */\n team_id?: string;\n /** @example \"My Project\" */\n title?: string;\n description?: string;\n icon?: Image;\n overview_page_id?: string;\n /** @example \"u-dsu0j19\" */\n user_id?: string;\n /** @example \"uDsu0j19\" */\n user_id_updated?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n /** unix timestamp in seconds */\n time_expires?: STime;\n members?: Member[];\n /**\n * true if currently logged in user is a member of this project\n * @example true\n */\n is_member?: boolean;\n /** @example 7 */\n total_members: number;\n /** @example 2 */\n total_members_online: number;\n /**\n * Deprecated. Use is_private instead\n * @example true\n */\n is_public: boolean;\n /** @example true */\n is_private: boolean;\n page_order?: FlatNode[];\n pages: PageLink[];\n trashed?: Trashed;\n archive_page_order?: FlatNode[];\n archive_pages: PageLink[];\n /** string array representing an order of IDs */\n board_order?: Order;\n boards: BoardLink[];\n sprints: SprintLink[];\n estimate_system?: EstimateSystem;\n}\n\nexport interface PageLink {\n id?: string;\n title?: string;\n icon?: Image;\n}\n\nexport interface BoardLink {\n id?: string;\n title?: string;\n}\n\nexport interface SprintLink {\n id?: string;\n title?: string;\n /** unix timestamp in seconds */\n start_date?: STime;\n /** unix timestamp in seconds */\n end_date?: STime;\n}\n\nexport type GetProjectsResponse = ResponseMetadata & {\n /** string array representing an order of IDs */\n project_order?: Order;\n projects?: Project[];\n};\n\nexport interface GetProjectResponse {\n project?: Project;\n}\n\nexport interface CreateProjectRequest {\n /** @example \"My Project Title\" */\n title: string;\n /** @example \"Project description\" */\n description?: string;\n icon?: Image | null;\n /**\n * Deprecated. Use is_private instead.\n * @example false\n */\n is_public?: boolean | null;\n /** @example false */\n is_private?: boolean | null;\n /** @example \"22\" */\n overview_page_id?: string;\n /** @maxItems 20 */\n members?: AddMemberRequest[];\n estimate_system?: EstimateSystem;\n}\n\nexport interface CreateProjectResponse {\n project?: Project;\n}\n\nexport interface UpdateProjectRequest {\n /** @example \"updated project title\" */\n title?: string | null;\n /** @example \"updated project description\" */\n description?: string | null;\n icon?: Image | null;\n /** Toggle project privacy. */\n is_private?: boolean | null;\n /**\n * a position where the project should be placed in the sidebar\n * @example 3\n */\n position?: number | null;\n /** @example \"22\" */\n overview_page_id?: string | null;\n /**\n * pass an empty string to unset\n * @example \"fibonacci\"\n */\n estimate_system?: \"\" | \"fibonacci\" | \"tshirt\" | \"exponential\" | null;\n}\n\nexport interface UpdateProjectResponse {\n project?: Project;\n}\n\nexport interface SetProjectOwnerRequest {\n /** @example \"udsu0j19\" */\n user_id: string;\n}\n\nexport interface Collaboration {\n /** Security token used to start a collaboration session */\n token?: string;\n}\n\nexport enum CollaborationResourceType {\n Page = \"page\",\n Card = \"card\",\n}\n\nexport interface Page {\n /** @example \"43\" */\n id?: string;\n /** @example \"93738022-c193-494e-95a4-fc3e4346b5e1\" */\n alias_id?: string;\n /** @example \"Team Page\" */\n title?: string;\n font?: Font;\n icon?: Image;\n /** @maxLength 102400 */\n content?: string;\n /** @example 1 */\n schema?: number;\n collaboration?: Collaboration;\n /** @example \"1\" */\n project_id?: string;\n cover_image?: CoverImage;\n /** @example \"u-dsu0j19\" */\n user_id?: string;\n /** @example \"u-dsu0j19\" */\n user_id_updated?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** @example \"teu-dsu0j19\" */\n team_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n members?: Member[];\n /** @example false */\n bookmarked: boolean;\n /** page archive status */\n archived?: ArchivedPage;\n /** @example false */\n is_public: boolean;\n public_settings?: PublicPageSettings;\n /** @example 3 */\n total_comments?: number;\n /**\n * whether current user is a watcher of this page\n * @example true\n */\n is_watching?: boolean;\n /**\n * whether current user has this page bookmarked\n * @example true\n */\n is_bookmarked?: boolean;\n /**\n * whether to show a table of contents on page\n * @example true\n */\n hide_table_of_contents?: boolean;\n /**\n * whether to show subpages section on page\n * @example true\n */\n hide_subpages?: boolean;\n}\n\nexport interface PublicPageSettings {\n /** @example \"https://pages.superthread.com/t/team/p/1\" */\n url?: string;\n robots?: MetaRobotValue[];\n}\n\nexport enum MetaRobotValue {\n All = \"all\",\n Index = \"index\",\n Follow = \"follow\",\n None = \"none\",\n Noindex = \"noindex\",\n Nofollow = \"nofollow\",\n Noimageindex = \"noimageindex\",\n Nosnippet = \"nosnippet\",\n Noarchive = \"noarchive\",\n Nocache = \"nocache\",\n Notranslate = \"notranslate\",\n}\n\nexport interface CreatePageRequest {\n /** @example \"Team Page\" */\n title?: string;\n /** @maxLength 102400 */\n content?: string;\n /** @example 1 */\n schema?: number | null;\n font?: string;\n /** @example \"3\" */\n project_id: string;\n cover_image?: CoverImage | null;\n icon?: Image | null;\n /**\n * Parent page ID this page should be placed under. Send an empty string to place the page at the root of the project\n * @example \"44\"\n */\n parent_page_id?: string | null;\n /**\n * a position where the page should be placed in relation to its siblings\n * @example 3\n */\n position?: number | null;\n /** @example false */\n is_public?: boolean | null;\n}\n\nexport interface CreatePageResponse {\n page?: Page;\n}\n\nexport interface UpdatePageResponse {\n page?: Page;\n}\n\nexport interface PageTemplate {\n /** @example \"43\" */\n id?: string;\n /** @example \"Template title\" */\n title?: string;\n icon?: Image;\n /**\n * IDs of projects where this template is available\n * @example [\"5\",\"8\"]\n */\n project_ids?: string[];\n /** @example \"Page title\" */\n page_title?: string;\n /**\n * @maxLength 102400\n * @example \"Page content\"\n */\n page_content?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n}\n\nexport interface GetPageTemplateResponse {\n page_template?: PageTemplate;\n}\n\nexport type GetPageTemplatesResponse = ResponseMetadata & {\n page_templates?: PageTemplate[];\n};\n\nexport interface CreatePageTemplateRequest {\n /** @example \"Template title\" */\n title: string;\n icon?: Image;\n /**\n * IDs of projects where this template is available\n * @example [\"5\",\"8\"]\n */\n project_ids?: string[];\n /** @example \"Page title\" */\n page_title: string;\n /**\n * @maxLength 102400\n * @example \"Page content\"\n */\n page_content: string;\n}\n\nexport interface CreatePageTemplateResponse {\n page_template?: PageTemplate;\n}\n\nexport interface UpdatePageTemplateRequest {\n /** @example \"Template title\" */\n title?: string | null;\n icon?: Image | null;\n /**\n * IDs of projects where this template is available\n * @example [\"5\",\"8\"]\n */\n project_ids?: string[];\n /** @example \"Page title\" */\n page_title?: string | null;\n /**\n * @maxLength 102400\n * @example \"Page content\"\n */\n page_content?: string | null;\n}\n\nexport interface UpdatePageTemplateResponse {\n page_template?: PageTemplate;\n}\n\nexport interface GetPageResponse {\n page?: Page;\n}\n\nexport interface UpdatePageRequest {\n /** @example \"Team Page\" */\n title?: string | null;\n font?: string | null;\n /** @example \"3\" */\n project_id?: string | null;\n cover_image?: CoverImage | null;\n icon?: Image | null;\n /** @example false */\n is_public?: boolean | null;\n /**\n * Parent page ID this page should be placed under. Send an empty string to place the page at the root of the project\n * @example \"44\"\n */\n parent_page_id?: string | null;\n /**\n * a position where the page should be placed in relation to its siblings\n * @example 3\n */\n position?: number | null;\n public_settings?: PublicPageSettings | null;\n /**\n * make this page archived or unarchived\n * @example true\n */\n archived?: boolean | null;\n /**\n * whether to show a table of contents on page\n * @example true\n */\n hide_table_of_contents?: boolean | null;\n /**\n * whether to show subpages section on page\n * @example true\n */\n hide_subpages?: boolean | null;\n}\n\nexport interface PageVersion {\n /** @example \"8\" */\n id?: string;\n page_id?: string;\n /** @example \"Team Page\" */\n title?: string;\n font?: Font;\n content?: string;\n icon?: Image;\n cover_image?: CoverImage;\n /** @example \"u-dsu0j19\" */\n user_id?: string;\n /** @example \"u-dsu0j19\" */\n user_id_updated?: string;\n /** @example \"teu-dsu0j19\" */\n team_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** @example false */\n is_public: boolean;\n}\n\nexport interface CopyPageRequest {\n project_id: string;\n /** @example \"Duplicate of ...\" */\n title?: string | null;\n /**\n * Parent page ID this page should be placed under. Send an empty string to place the page at the root of the project\n * @example \"44\"\n */\n parent_page_id?: string | null;\n /**\n * a position where the page should be placed in relation to its siblings\n * @example 3\n */\n position?: number | null;\n}\n\nexport interface CopyPageResponse {\n page?: Page;\n}\n\nexport type GetPagesResponse = ResponseMetadata & {\n page_order?: FlatNode[];\n archive_page_order?: FlatNode[];\n pages?: Page[];\n};\n\nexport type GetPageVersionsResponse = ResponseMetadata & {\n pageVersions?: PageVersion[];\n};\n\nexport interface GetCollaborationResponse {\n collaboration?: Collaboration;\n}\n\nexport interface NoteTemplate {\n /** @example \"43\" */\n id?: string;\n /** @example \"Template title\" */\n title?: string;\n /**\n * @maxLength 102400\n * @example \"Template context\"\n */\n context?: string;\n sections?: NoteTemplateSection[];\n /**\n * Whether to generate AI actions with this note template\n * @example true\n */\n ai_actions?: boolean;\n icon?: Image;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n is_shared?: boolean | null;\n is_favourited?: boolean | null;\n}\n\nexport interface NoteTemplateSection {\n /** @example \"Introduction\" */\n title?: string;\n /** @example \"A brief introduction to the note\" */\n description?: string;\n}\n\nexport interface GetNoteTemplateResponse {\n note_template?: NoteTemplate;\n}\n\nexport type GetNoteTemplatesResponse = ResponseMetadata & {\n templates?: NoteTemplate[];\n};\n\nexport interface CreateNoteTemplateRequest {\n /** @example \"Template title\" */\n title: string;\n icon?: Image | null;\n /**\n * @maxLength 102400\n * @example \"Template context\"\n */\n context?: string | null;\n sections?: NoteTemplateSection[];\n /**\n * Whether to generate AI actions with this note template\n * @example true\n */\n ai_actions?: boolean;\n /** @example true */\n is_shared?: boolean | null;\n}\n\nexport interface CreateNoteTemplateResponse {\n note_template?: NoteTemplate;\n}\n\nexport interface UpdateNoteTemplateRequest {\n title: string;\n /** @maxLength 102400 */\n context?: string | null;\n icon?: Image | null;\n sections?: NoteTemplateSection[] | null;\n /**\n * Whether to generate AI actions with this note template\n * @example true\n */\n ai_actions?: boolean | null;\n is_shared?: boolean | null;\n}\n\nexport interface UpdateNoteTemplateResponse {\n note_template?: NoteTemplate;\n}\n\nexport interface NoteTemplateFavourite {\n template_id?: string;\n /** @example \"team123\" */\n team_id?: string;\n /** @example [\"user1\",\"user2\"] */\n users_favourited?: string[];\n /** @example [\"user3\",\"user4\"] */\n users_unfavourited?: string[];\n}\n\nexport interface ToggleNoteTemplateFavouriteResponse {\n /** Indicates whether the template is now favourited or not */\n is_favourited?: boolean;\n}\n\nexport interface ApplyNoteTemplateRequest {\n /** @example \"43\" */\n note_template_id: string;\n}\n\nexport interface ApplyNoteTemplateResponse {\n ai_note?: AIEnhancedNote;\n}\n\nexport enum NoteTranscriptSource {\n Author = \"author\",\n Other = \"other\",\n}\n\nexport interface NoteTranscriptBrief {\n /** @example \"This is a transcript\" */\n content?: string;\n source?: NoteTranscriptSource;\n}\n\nexport type NoteTranscript = NoteTranscriptBrief & {\n /** @example \"43\" */\n id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n};\n\nexport interface MeetingMetadata {\n /** External ID for the event */\n id?: string;\n /** Meeting name or event title */\n name?: string;\n /** Meeting description, or event summary */\n description?: string;\n /** List of meeting links (with a provider) where users can join the event */\n links?: MeetingLink[];\n /** Location of the event */\n location?: string;\n /** Time when the event is scheduled to start */\n start_time?: STimePtr;\n /** Time when the event is expected to end */\n end_time?: STimePtr;\n}\n\nexport interface MeetingLink {\n /** The provider for the meeting link (e.g., google, zoom, teams, other). */\n provider?: \"google\" | \"zoom\" | \"teams\" | \"other\";\n /** The meeting link. */\n link?: string;\n}\n\nexport type MeetingParticipant = {\n /**\n * Internal User ID if the email of the meeting attendee belongs to a Superthread user in the workspace.\n * @example \"uDsu0j19\"\n */\n user_id: string | null;\n /**\n * Email address of the participant\n * @example \"username@example.com\"\n */\n email?: string;\n /**\n * The display name of the participant\n * @example \"John Doe\"\n */\n name?: string;\n};\n\nexport interface Note {\n /** @example \"\" */\n id?: string;\n /** @example \"Team Note\" */\n title?: string;\n transcript?: string;\n transcripts?: NoteTranscript[];\n /** @maxLength 102400 */\n user_notes?: string;\n ai_notes?: AIEnhancedNote[];\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** @example \"tdsu0j19\" */\n team_id?: string;\n /** ID of the last note template used for this note */\n last_note_template_id?: string;\n /** @example false */\n is_public: boolean;\n public_settings?: PublicNoteSettings;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n meeting_metadata: MeetingMetadata | null;\n /** Date of when the meeting took place. */\n meeting_date: STimePtr;\n /** The time when the meeting started. */\n meeting_time: STimePtr;\n meeting_organizer: MeetingParticipant | null;\n meeting_attendees: MeetingParticipant[] | null;\n}\n\nexport interface AIEnhancedNote {\n /** @example \"866a3b86-4651-482c-bb69-61921ea4548c\" */\n id?: string;\n /** @example \"1da3b68c-3a82-495c-a6c9-e7a494281a36\" */\n note_template_id?: string;\n /** @example \"Team Note\" */\n title?: string;\n /** @maxLength 102400 */\n content?: string;\n /** unix timestamp in seconds */\n time_updated?: STime;\n ai_actions_status?: \"disabled\" | \"pending\" | \"completed\";\n actions?: AIGeneratedAction[];\n}\n\nexport interface CreateNoteRequest {\n /** @example \"Team Note\" */\n title: string;\n transcript?: string | null;\n transcripts?: NoteTranscriptBrief[];\n /** @maxLength 102400 */\n user_notes?: string | null;\n google_calendar_event?: GoogleCalendarEvent | null;\n}\n\nexport interface CreateNoteResponse {\n note?: Note;\n}\n\nexport interface GetNoteResponse {\n note?: Note;\n}\n\nexport type GetNotesResponse = ResponseMetadata & {\n notes?: Note[];\n};\n\nexport interface UpdateNoteRequest {\n /** @example \"Team Note\" */\n title?: string | null;\n transcript?: string | null;\n transcripts?: NoteTranscriptBrief[];\n /** @maxLength 102400 */\n user_notes?: string | null;\n last_note_template_id?: string | null;\n is_public?: boolean | null;\n public_settings?: PublicNoteSettings | null;\n google_calendar_event?: GoogleCalendarEvent | null;\n /** unix timestamp in seconds */\n metadata_date?: STimePtr;\n /** unix timestamp in seconds */\n metadata_time?: STimePtr;\n metadata_organizer?: MeetingParticipant | null;\n}\n\nexport interface UpdateNoteResponse {\n note?: Note;\n}\n\nexport interface AddAttendeeRequest {\n attendee?: MeetingParticipant;\n}\n\nexport interface AddAttendeeResponse {\n note?: Note;\n}\n\nexport interface RemoveAttendeeResponse {\n note?: Note;\n}\n\nexport interface UpdateEnhancedNoteRequest {\n /** @example \"Team Note\" */\n title?: string | null;\n /** @maxLength 102400 */\n content?: string | null;\n}\n\nexport interface UpdateEnhancedNoteResponse {\n ai_note?: AIEnhancedNote;\n}\n\nexport interface PublicNoteSettings {\n /** @example \"https://notes.superthread.com/n/1\" */\n url?: string;\n}\n\nexport interface AddMembersRequest {\n members?: AddMemberRequest[];\n}\n\nexport interface AddMemberRequest {\n /** @example \"u-dsu0j19\" */\n user_id?: string;\n role?: MemberRole;\n}\n\nexport interface Member {\n /** @example \"u-dsu0j19\" */\n user_id?: string;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n assigned_date?: STime;\n role?: MemberRole;\n}\n\nexport enum MemberRole {\n Admin = \"admin\",\n Member = \"member\",\n}\n\nexport enum TeamMemberRole {\n Owner = \"owner\",\n Admin = \"admin\",\n Member = \"member\",\n Guest = \"guest\",\n GuestReader = \"guestReader\",\n}\n\nexport enum TeamMemberStatus {\n Active = \"active\",\n Invited = \"invited\",\n Inactive = \"inactive\",\n Imported = \"imported\",\n}\n\nexport interface AddWatcherRequest {\n /** @example \"uDsu0j19\" */\n user_id?: string;\n}\n\nexport enum Font {\n Sans = \"sans\",\n Serif = \"serif\",\n Mono = \"mono\",\n}\n\nexport interface Archived {\n /** @example \"uDsu0j19\" */\n user_id?: string;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_archived?: STime;\n}\n\nexport interface ArchivedPage {\n /** @example \"uDsu0j19\" */\n user_id?: string;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_archived?: STime;\n parent_page_id?: string;\n}\n\nexport interface Trashed {\n /** describes a user or robot that created or updated a resource */\n user_deleted?: Actor;\n /** unix timestamp in seconds */\n time_deleted?: STime;\n}\n\nexport interface Activity {\n type?: ActivityType;\n activity_entry?: ActivityEntry;\n comment?: Comment;\n}\n\nexport enum ActivityType {\n ActivityEntry = \"activity_entry\",\n Comment = \"comment\",\n}\n\nexport enum ActivityEntryResourceType {\n Tag = \"tag\",\n File = \"file\",\n ParentCard = \"parent_card\",\n ChildCard = \"child_card\",\n}\n\nexport interface ActivityEntry {\n /** @example \"42\" */\n id?: string;\n /** @example \"tag-added\" */\n entry_type?: string;\n resource_type?: \"card\" | \"epic\";\n /** additional data respresented before the activity */\n from?: ActivityEntryResource;\n /** additional data respresented after the activity */\n to?: ActivityEntryResource;\n /** @example \"431\" */\n page_id?: string;\n /** @example \"433\" */\n card_id?: string;\n /** @example \"u-dsu0j19\" */\n user_id?: string;\n /** @example \"u-dsu0j19\" */\n team_id?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** unix timestamp in seconds */\n time_created?: STime;\n}\n\n/** subject data of the activity */\nexport interface ActivityEntryResource {\n /** @example \"tag\" */\n resource_type?: string;\n /** id of the resource */\n resource_id?: string;\n /** string representation of the resource if applicable, e.g. due date value */\n resource_value?: string;\n tag?: Tag;\n parent_card?: ParentCard;\n child_card?: ChildCard;\n linked_card?: LinkedCard;\n checklist?: Checklist;\n file?: File;\n /** brief view of epic to be used in a card */\n epic?: EpicBrief;\n move_hints?: {\n project_id?: string;\n board_id?: string;\n board_title?: string;\n sprint_id?: string;\n list_id?: string;\n list_title?: string;\n list_behavior?: ListBehavior;\n };\n}\n\nexport type GetActivitiesResponse = ResponseMetadata & {\n activities?: Activity[];\n};\n\nexport interface GetActivityResponse {\n activity?: Activity;\n}\n\nexport interface CreateActivityRequest {\n /** @example \"Good point!\" */\n content: string;\n /** @example \"431\" */\n card_id?: string;\n /** @example \"5\" */\n page_id?: string;\n /** @example \"highlighted text\" */\n context?: string;\n}\n\nexport interface UpdateActivityRequest {\n /** @example \"Sounds great!\" */\n content?: string | null;\n /** @example \"new highlighted text\" */\n context?: string | null;\n status?: \"resolved\" | \"open\" | \"orphaned\" | null;\n}\n\nexport interface WebhookNotification {\n /**\n * The type of destination for the notification. E.g.: slack_channel_webhook|email etc...\n * @example \"slack_channel_webhook\"\n */\n destination_type?: \"slack_channel_webhook\";\n /**\n * The Integration ID that holds the Webhook configuration for this notification type.\n * @example \"42\"\n */\n integration_id?: string;\n}\n\n/** Defines a webhook notification setting for the board. */\nexport interface BoardWebhookNotificationSettings {\n /** Defines a webhook destination target for these actions. */\n webhook?: WebhookNotification;\n options?: {\n /** Whether to send a notification when a card is added to the board. */\n card_created?: boolean;\n /** Whether to send a notification when a card is commented on (excluding replies). */\n card_commented?: boolean;\n /** Whether to send a notification when a card due date is soon/overdue. */\n card_due_date?: boolean;\n };\n}\n\n/** Defines a webhook notification setting for the list. */\nexport interface ListWebhookNotificationSettings {\n /** Defines a webhook destination target for these actions. */\n webhook?: WebhookNotification;\n options?: {\n /** Whether to send a notification when a card is added to the list. */\n card_created?: boolean;\n };\n}\n\nexport type CreateWebhookNotificationRequest = WebhookNotification;\n\nexport interface CreateWebhookNotificationResponse {\n board?: Board;\n}\n\nexport interface UpdateBoardWebhookNotificationRequest {\n /** Whether to send a notification when a card is added to the board. */\n card_created: boolean | null;\n /** Whether to send a notification when a card is commented on (excluding replies). */\n card_commented: boolean | null;\n /** Whether to send a notification when a card due date is soon/overdue. */\n card_due_date: boolean | null;\n}\n\nexport interface UpdateBoardWebhookNotificationResponse {\n board?: Board;\n}\n\nexport interface ToggleListWebhookNotificationRequest {\n /** A webhook configuration for this notification. Not changeable. */\n webhook: WebhookNotification;\n /**\n * The board ID that the list belongs to.\n * @example \"42\"\n */\n board_id: string;\n /** Whether to send a notification when a card is added to the list. */\n card_created: boolean | null;\n}\n\nexport interface ToggleListWebhookNotificationResponse {\n list?: List;\n}\n\nexport interface CommentCommon {\n /** @example \"42\" */\n id?: string;\n type?: \"comment\" | \"child_comment\";\n /**\n * @maxLength 16384\n * @example \"Good point!\"\n */\n content?: string;\n /** @example 1 */\n schema?: number;\n /** @example \"431\" */\n page_id?: string;\n /** @example \"433\" */\n card_id?: string;\n /** @example \"u-dsu0j19\" */\n user_id?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** @example \"u-dsu0j19\" */\n team_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n reactions?: Reaction[];\n}\n\nexport type Comment = CommentCommon & {\n /** @example \"attach context to a comment\" */\n context?: string;\n status?: CommentStatus;\n participants?: string[];\n children?: ResponseMetadata & {\n child_comments?: ChildComment[];\n };\n};\n\nexport type ChildComment = CommentCommon & {\n /** @example \"1\" */\n parent_id?: string;\n};\n\nexport enum CommentStatus {\n Resolved = \"resolved\",\n Open = \"open\",\n Orphaned = \"orphaned\",\n}\n\nexport interface Reaction {\n /** @example \"sweat_smile\" */\n id?: string;\n /** Reaction UTF-8 unicode value */\n unicode?: string;\n members?: ReactionMember[];\n}\n\nexport interface ReactionMember {\n /** ID of user that reacted */\n user_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** Variation of reaction */\n variation?: string;\n}\n\nexport type GetCommentsResponse = ResponseMetadata & {\n comments?: Comment[];\n};\n\nexport type GetChildCommentsResponse = ResponseMetadata & {\n child_comments?: ChildComment[];\n};\n\nexport interface CreateCommentRequest {\n /**\n * @maxLength 16384\n * @example \"Good point!\"\n */\n content: string;\n /** @example 1 */\n schema?: number | null;\n /** @example \"431\" */\n card_id?: string;\n /** @example \"5\" */\n page_id?: string;\n /** @example \"highlighted text\" */\n context?: string;\n}\n\nexport interface CreateChildCommentRequest {\n /**\n * @maxLength 16384\n * @example \"Good point!\"\n */\n content: string;\n /** @example 1 */\n schema?: number | null;\n}\n\nexport interface CreateCommentReactionRequest {\n unicode?: string | null;\n /** @example \"skin-tone-4\" */\n variation?: string | null;\n}\n\nexport interface UpdateCommentRequest {\n /**\n * @maxLength 16384\n * @example \"Sounds great!\"\n */\n content?: string | null;\n /** @example 1 */\n schema?: number | null;\n /** @example \"new highlighted text\" */\n context?: string | null;\n status?: CommentStatus;\n}\n\nexport interface UpdateCommentStatusRequest {\n status: CommentStatus;\n}\n\nexport interface UpdateChildCommentRequest {\n /**\n * @maxLength 16384\n * @example \"Sounds great!\"\n */\n content?: string | null;\n /** @example 1 */\n schema?: number | null;\n}\n\nexport interface CommentResponse {\n comment?: Comment;\n}\n\nexport interface ChildCommentResponse {\n child_comment?: ChildComment;\n}\n\nexport interface CreateCommentReactionResponse {\n reaction?: Reaction;\n}\n\nexport interface Board {\n /** @example \"24\" */\n id?: string;\n /** @example \"3\" */\n project_id?: string;\n /** @example \"tDsu0j19\" */\n team_id?: string;\n /** @example \"My Board\" */\n title?: string;\n content?: string;\n /** @example \"shield\" */\n icon?: string;\n color?: string;\n image_urls?: string;\n /** @example \"https://s3.....com/thumbnail.png\" */\n thumbnail_url?: string;\n /** @example \"u2erXoQq\" */\n user_id?: string;\n /** @example \"u2erXoQq\" */\n user_id_updated?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n members?: Member[];\n /** lists belonging to this board (if ?include=lists provided) */\n lists?: List[];\n /** string array representing an order of IDs */\n list_order?: Order;\n tags?: Tag[];\n /** board archived status */\n archived?: Archived;\n /**\n * whether current user is a watcher of this board\n * @example true\n */\n is_watching?: boolean;\n /**\n * whether current user has this board bookmarked\n * @example true\n */\n is_bookmarked?: boolean;\n /** Generic mapping of version control software to automate state of cards in boards. Specifically which list they reside in */\n vcs_mapping?: VCSMapping;\n /** layout for the board */\n layout?: BoardLayout;\n /** email address to create cards via email */\n email?: InboundEmail;\n webhook_notifications?: BoardWebhookNotificationSettings[];\n}\n\nexport type GetBoardsResponse = ResponseMetadata & {\n /** string array representing an order of IDs */\n board_order?: Order;\n boards?: Board[];\n};\n\nexport interface GetBoardResponse {\n board?: Board;\n}\n\nexport interface CreateBoardRequest {\n /** @example \"32\" */\n project_id: string;\n /** @example \"My Board\" */\n title?: string;\n /** @example \"Some content\" */\n content?: string;\n /** @example \"shield\" */\n icon?: string;\n color?: string;\n image_urls?: string;\n /** @example \"https://s3.....com/thumbnail.png\" */\n thumbnail_url?: string;\n lists?: CreateListInnerRequest[];\n members?: AddMemberRequest[];\n layout?: BoardLayout | null;\n}\n\nexport interface CreateBoardResponse {\n board?: Board;\n}\n\nexport interface UpdateBoardRequest {\n /** @example \"44\" */\n project_id?: string | null;\n /** @example \"My Board\" */\n title?: string | null;\n /** @example \"Some content\" */\n content?: string | null;\n /** @example \"shield\" */\n icon?: string | null;\n color?: string | null;\n image_urls?: string | null;\n /** @example \"https://s3.....com/thumbnail.png\" */\n thumbnail_url?: string | null;\n /**\n * make this board archived/unarchived\n * @example true\n */\n archived?: boolean | null;\n /**\n * a position where the board should be placed in the project\n * @example 3\n */\n position?: number | null;\n vcs_mapping?: VCSMappingUpdate | null;\n /** layout for the board */\n layout?: BoardLayout;\n}\n\nexport interface UpdateBoardResponse {\n board?: Board;\n}\n\nexport interface CopyBoardRequest {\n /** @example \"Copy of ...\" */\n title?: string | null;\n /** @example \"5\" */\n project_id: string;\n}\n\nexport interface CopyBoardResponse {\n board?: Board;\n}\n\nexport interface UpdateBoardEmailRequest {\n /** @example true */\n active?: boolean | null;\n /**\n * regenerate the email address\n * @example true\n */\n regenerate?: boolean | null;\n}\n\nexport interface UpdateBoardEmailResponse {\n email?: InboundEmail;\n}\n\n/** Generic mapping of version control software to automate state of cards in which list they reside in. */\nexport interface VCSMappingItem {\n /**\n * Branch name to apply this VCS automation for.\n * @example \"development\"\n */\n name?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_draft?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_open?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_review_requested?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_merged?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_closed?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n}\n\n/** Generic mapping of version control software to automate state of cards in boards. Specifically which list they reside in */\nexport interface VCSMapping {\n /**\n * List ID\n * @example \"41\"\n */\n pr_draft?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_open?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_review_requested?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_merged?: string;\n /**\n * List ID\n * @example \"41\"\n */\n pr_closed?: string;\n /** A list of VCSMappingItem that defines automation for branch specific workflows. */\n branches?: VCSMappingItem[];\n}\n\nexport interface VCSMappingUpdate {\n /**\n * Target branch name\n * @example \"develop\"\n */\n branch?: string | null;\n /**\n * List ID\n * @example \"41\"\n */\n pr_draft?: string | null;\n /**\n * List ID\n * @example \"41\"\n */\n pr_open?: string | null;\n /**\n * List ID\n * @example \"41\"\n */\n pr_review_requested?: string | null;\n /**\n * List ID\n * @example \"41\"\n */\n pr_merged?: string | null;\n /**\n * List ID\n * @example \"41\"\n */\n pr_closed?: string | null;\n}\n\nexport interface CreateBranchAutomationRequest {\n /**\n * Create a new automation for this branch name.\n * @minLength 1\n * @maxLength 250\n * @pattern ^[a-zA-Z0-9._\\/-]+$\n * @example \"staging\"\n */\n name: string;\n}\n\nexport interface UpdateVCSBranchNameRequest {\n /**\n * @minLength 1\n * @maxLength 250\n * @pattern ^[a-zA-Z0-9._\\/-]+$\n * @example \"new-branch-name\"\n */\n branch: string;\n}\n\nexport interface InboundEmail {\n /** @example \"board+engineering-board-b2L2jKl@inbound.superthread.com\" */\n email?: string;\n /** @example true */\n active?: boolean;\n}\n\nexport interface CreateTagRequest {\n /** @example \"Todo\" */\n name: string;\n color: TagColor;\n /** used when a tag is scoped within a project */\n project_id?: string | null;\n}\n\nexport interface CreateTagResponse {\n tag?: Tag;\n}\n\nexport type CreateTagErrorResponse = Error & {\n type?: \"ERR_TAG_PROJECT_CONFLICT\" | \"ERR_TAG_EXISTS\";\n /**\n * when type=ERR_TAG_PROJECT_CONFLICT, returns project IDs that already have this tag\n * @example [\"5\",\"8\"]\n */\n project_ids?: string[];\n /**\n * when type=ERR_TAG_EXISTS, returns existing tag ID\n * @example \"3\"\n */\n tag_id?: string;\n};\n\nexport interface UpdateTagRequest {\n /** @example \"Todo\" */\n name?: string | null;\n color: TagColor;\n}\n\nexport interface UpdateTagResponse {\n tag?: Tag;\n}\n\nexport interface MergeTagRequest {\n /**\n * Name of the tag to merge\n * @example \"Todo\"\n */\n name: string;\n /** Color to be used for the newly created workspace tag */\n color: TagColor;\n}\n\nexport interface MergeTagResponse {\n tag?: Tag;\n}\n\nexport type GetTagsResponse = ResponseMetadata & {\n tags?: Tag[];\n};\n\nexport interface AddTagRequest {\n /** Tag ID to attach to the card */\n id?: string;\n /** Array of tag IDs to attach to the card */\n ids?: string[];\n}\n\nexport interface List {\n /** @example \"41\" */\n id?: string;\n /** @example \"tDsu0j19\" */\n team_id?: string;\n /** @example \"My list\" */\n title?: string;\n content?: string;\n behavior?: ListBehavior;\n /** @example \"43\" */\n board_id?: string;\n /** @example \"u981hdaT\" */\n user_id?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** @example \"5\" */\n project_id?: string;\n /** @example \"shield\" */\n icon?: string;\n color?: string;\n /** string array representing an order of IDs */\n card_order?: Order;\n /** @example 5 */\n total_cards?: number;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n cards?: Card[];\n epics?: Epic[];\n /** list archived status */\n archived?: Archived;\n /**\n * whether current user is a watcher of this list\n * @example true\n */\n is_watching?: boolean;\n webhook_notifications?: ListWebhookNotificationSettings[];\n}\n\nexport type GetListsResponse = ResponseMetadata & {\n lists?: List[];\n};\n\nexport interface GetListResponse {\n list?: List;\n}\n\nexport interface CreateListRequest {\n /** @example \"My list\" */\n title?: string;\n content?: string;\n /** @example \"2\" */\n board_id: string;\n /** @example \"shield\" */\n icon?: string;\n color?: string;\n behavior?: ListBehavior;\n}\n\nexport interface CreateEpicsListRequest {\n /** @example \"My list\" */\n title?: string;\n content?: string;\n /** @example \"shield\" */\n icon?: string;\n color?: string;\n behavior?: ListBehavior;\n}\n\nexport interface CreateListInnerRequest {\n /** @example \"My list\" */\n title?: string;\n content?: string;\n /** @example \"shield\" */\n icon?: string;\n color?: string;\n behavior?: ListBehavior;\n}\n\nexport interface CreateListResponse {\n list?: List;\n}\n\nexport interface UpdateListRequest {\n /** @example \"My list\" */\n title?: string | null;\n content?: string | null;\n /** @example \"2\" */\n board_id?: string | null;\n /** @example \"shield\" */\n icon?: string | null;\n color?: string;\n /**\n * a position where the list should be placed in the board\n * @example 0\n */\n position?: number | null;\n /**\n * make this list archived/unarchived\n * @example true\n */\n archived?: boolean | null;\n behavior?: ListBehavior | null;\n}\n\nexport interface UpdateListResponse {\n list?: List;\n}\n\nexport enum ListBehavior {\n Backlog = \"backlog\",\n Committed = \"committed\",\n Started = \"started\",\n Completed = \"completed\",\n Cancelled = \"cancelled\",\n}\n\nexport interface Card {\n /** @example \"2700\" */\n id?: string;\n /**\n * Type of the object being returned\n * @example \"card\"\n */\n type?: string;\n icon?: Image;\n /** @example \"tDsu0j19\" */\n team_id?: string;\n /** @example \"My Card\" */\n title?: string;\n /**\n * @maxLength 102400\n * @example \"Some card content\"\n */\n content?: string;\n /**\n * Content schema version\n * @example 1\n */\n schema?: number;\n collaboration?: Collaboration;\n status?: CardStatus;\n /** @example 1 */\n priority?: number;\n /** @example \"12\" */\n board_id?: string;\n /** cached field */\n board_title?: string;\n /** @example \"41\" */\n list_id?: string;\n /** cached field */\n list_color?: string;\n /** cached field */\n list_title?: string;\n /** @example \"4s12\" */\n sprint_id?: string;\n /** @example \"uR2dws11\" */\n owner_id?: string;\n /** @example \"uR2dws11\" */\n user_id?: string;\n /** @example \"u2erXoQq\" */\n user_id_updated?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n start_date?: STime;\n /** unix timestamp in seconds */\n due_date?: STime;\n /** unix timestamp in seconds */\n completed_date?: STime;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n members?: Member[];\n checklists?: Checklist[];\n /** string array representing an order of IDs */\n checklist_order?: Order;\n checklist_item_order: Record;\n parent_card?: ParentCard;\n child_cards?: ChildCard[];\n /** string array representing an order of IDs */\n child_card_order?: Order;\n linked_cards?: LinkedCard[];\n /** card archived status */\n archived?: Archived;\n /**\n * whether the card is in an archived list\n * @example false\n */\n archived_list?: boolean;\n /**\n * whether the card is in an archived board\n * @example false\n */\n archived_board?: boolean;\n tags?: Tag[];\n /** @example 3 */\n total_comments: number;\n /** @example 1 */\n total_files: number;\n /**\n * whether current user is a watcher of this card\n * @example true\n */\n is_watching?: boolean;\n /**\n * whether current user has this card bookmarked\n * @example true\n */\n is_bookmarked?: boolean;\n /** cached field */\n project_id?: string;\n external_links?: ExternalLink[];\n hints?: CardHint[];\n /**\n * effort estimation enum for the card. 0 is unset, 1 is least, 5 is greatest. will map to different values depending on project settings.\n * @min 0\n * @max 5\n */\n estimate?: number;\n /** brief view of epic to be used in a card */\n epic?: EpicBrief;\n}\n\nexport interface Epic {\n /** @example \"2700\" */\n id?: string;\n /**\n * Type of the object being returned\n * @example \"epic\"\n */\n type?: string;\n /** @example \"tDsu0j19\" */\n team_id?: string;\n icon?: Image;\n /** @example \"My Card\" */\n title?: string;\n /**\n * Content schema version\n * @example 1\n */\n schema?: number;\n /**\n * @maxLength 102400\n * @example \"Some card content\"\n */\n content?: string;\n collaboration?: Collaboration;\n /** @example \"41\" */\n list_id?: string;\n /** cached field */\n list_color?: string;\n /** cached field */\n list_title?: string;\n status?: CardStatus;\n /** @example 1 */\n priority?: number;\n /** @example \"uR2dws11\" */\n owner_id?: string;\n /** @example \"uR2dws11\" */\n user_id?: string;\n /** @example \"u2erXoQq\" */\n user_id_updated?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n start_date?: STime;\n /** unix timestamp in seconds */\n due_date?: STime;\n /** unix timestamp in seconds */\n completed_date?: STime;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n members?: Member[];\n checklists?: Checklist[];\n /** string array representing an order of IDs */\n checklist_order?: Order;\n checklist_item_order: Record;\n child_cards?: ChildCard[];\n /** string array representing an order of IDs */\n child_card_order?: Order;\n linked_cards?: LinkedCard[];\n /** archive status */\n archived?: Archived;\n /**\n * whether the epic is in an archived list\n * @example false\n */\n archived_list?: boolean;\n tags?: Tag[];\n /** @example 3 */\n total_comments: number;\n /** @example 1 */\n total_files: number;\n /**\n * whether current user is a watcher of this epic\n * @example true\n */\n is_watching?: boolean;\n external_links?: ExternalLink[];\n hints?: CardHint[];\n}\n\nexport type GetCardsResponse = ResponseMetadata & {\n cards?: Card[];\n};\n\nexport interface GetCardResponse {\n card?: Card;\n}\n\nexport interface CreateCardRequest {\n /** @example \"My Card\" */\n title: string;\n /**\n * @maxLength 102400\n * @example \"Some card content\"\n */\n content: string;\n /** @example 1 */\n schema?: number | null;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n start_date?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n due_date?: STime;\n /** @example \"5\" */\n board_id: string;\n /** @example \"1\" */\n project_id: string;\n /** @example \"8\" */\n sprint_id: string;\n /** @example \"114\" */\n list_id: string;\n owner_id?: string | null;\n members?: AddMemberRequest[];\n /**\n * @min 0\n * @max 4\n * @example 1\n */\n priority?: number | null;\n /**\n * effort estimation enum for the card. 1 is least, 5 is greatest. will map to different values depending on project settings.\n * @min 1\n * @max 5\n * @example 3\n */\n estimate?: number | null;\n /** Optional card ID to set as parent */\n parent_card_id?: string | null;\n /** Optional epic ID to add card to */\n epic_id?: string | null;\n /**\n * Optional Board Email reference when creating a card from an email\n * @example \"b291eKoaaLn5\"\n */\n board_email_ref?: string | null;\n /** describes a user or robot that created or updated a resource */\n user?: Actor | null;\n}\n\nexport interface CreateCardResponse {\n card?: Card;\n}\n\nexport interface ConvertCardToEpicResponse {\n epic?: Epic;\n}\n\nexport interface UpdateCardRequest {\n /** @example \"My Card\" */\n title?: string | null;\n /** @example \"2\" */\n board_id?: string | null;\n /** @example \"114\" */\n list_id?: string | null;\n /** @example \"1\" */\n project_id?: string | null;\n /**\n * sprint id\n * @example \"8\"\n */\n sprint_id?: string | null;\n owner_id?: string | null;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n start_date?: STimePtr;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n due_date?: STimePtr;\n /**\n * a position where the card should be placed in the list\n * @example 5\n */\n position?: number | null;\n /**\n * @min 0\n * @max 4\n * @example 1\n */\n priority?: number | null;\n /**\n * effort estimation enum for the card. 0 is unset, 1 is least, 5 is greatest. will map to different values depending on project settings.\n * @min 0\n * @max 5\n * @example 3\n */\n estimate?: number | null;\n /**\n * make this card archived/unarchived\n * @example true\n */\n archived?: boolean | null;\n}\n\nexport interface UpdateCardResponse {\n card?: Card;\n}\n\nexport interface MoveCardSprint {\n /**\n * a new project ID where the card is being moved to (used together with a new sprint ID)\n * @example \"1\"\n */\n project_id?: string;\n /**\n * a new sprint ID where the card is being moved to\n * @example \"8\"\n */\n sprint_id?: string;\n /**\n * a new list ID where the card is being moved to\n * @example \"507F1A70-39B1-4436-BACF-CD87E9FE5122\"\n */\n list_id?: string;\n /**\n * a position where the card should be placed in the list. if unset, card will be placed at the end of the list\n * @example 5\n */\n position?: number | null;\n}\n\nexport interface MoveCardBoard {\n /**\n * a new list ID where the card is being moved to in the same or different board\n * @example \"24\"\n */\n list_id?: string;\n /**\n * a position where the card should be placed in the list. if unset, card will be placed at the end of the list\n * @example 5\n */\n position?: number | null;\n}\n\n/** object describing where to move the card (sprint or regular board) */\nexport interface MoveCardRequest {\n sprint?: MoveCardSprint | null;\n board?: MoveCardBoard | null;\n}\n\nexport interface MoveCardResponse {\n card?: Card;\n}\n\nexport interface GetEpicsResponse {\n /** @example \"tDsu0j19\" */\n team_id?: string;\n /** @example \"u2erXoQq\" */\n user_id_updated?: string;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n time_updated?: STime;\n lists?: List[];\n /** string array representing an order of IDs */\n list_order?: Order;\n}\n\nexport interface GetEpicResponse {\n epic?: Epic;\n}\n\nexport interface CreateEpicRequest {\n icon?: Image;\n title: string;\n /** @maxLength 102400 */\n content: string;\n /** @example 1 */\n schema?: number | null;\n /** @example \"114\" */\n list_id: string;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n start_date?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n due_date?: STime;\n members?: AddMemberRequest[];\n owner_id?: string | null;\n /**\n * @min 0\n * @max 4\n * @example 1\n */\n priority?: number | null;\n}\n\nexport interface CreateEpicResponse {\n epic?: Epic;\n}\n\nexport interface UpdateEpicRequest {\n icon?: Image | null;\n /** @example \"My Card\" */\n title?: string | null;\n /** @example \"114\" */\n list_id?: string | null;\n owner_id?: string | null;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n start_date?: STimePtr;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n due_date?: STimePtr;\n /**\n * a position where the epic should be placed in the list\n * @example 5\n */\n position?: number | null;\n /**\n * @min 0\n * @max 4\n * @example 1\n */\n priority?: number | null;\n /**\n * make this card archived/unarchived\n * @example true\n */\n archived?: boolean | null;\n}\n\nexport interface UpdateEpicResponse {\n epic?: Epic;\n}\n\nexport interface CardTemplate {\n /** @example \"53\" */\n id?: string;\n /** @example \"Template title\" */\n title?: string;\n icon?: Image;\n /**\n * IDs of projects where this template is available\n * @example [\"5\",\"8\"]\n */\n project_ids?: string[];\n /** @example \"5\" */\n card_board_id?: string;\n /** @example \"114\" */\n card_list_id?: string;\n /** @example \"Card title\" */\n card_title?: string;\n /** @example \"Card content\" */\n card_content?: string;\n card_checklists?: AddChecklistRequest[];\n /** @example \"uR2dws11\" */\n card_owner_id?: string;\n card_members?: AddMemberRequest[];\n card_tags?: AddTagRequest[];\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n /**\n * @min 0\n * @max 4\n * @example 1\n */\n card_priority?: number;\n card_child_cards?: AddChildCardTemplateRequest[];\n}\n\nexport interface AddChildCardTemplateRequest {\n /** @example \"Create illustration for upcoming holidays\" */\n title: string;\n /**\n * @maxLength 102400\n * @example \"Some card content\"\n */\n content: string;\n /** @example \"5\" */\n board_id: string;\n /** @example \"114\" */\n list_id: string;\n members?: AddMemberRequest[];\n tags?: AddTagRequest[];\n /**\n * @min 0\n * @max 4\n * @example 1\n */\n priority?: number | null;\n}\n\nexport interface GetCardTemplateResponse {\n card_template?: CardTemplate;\n}\n\nexport type GetCardTemplatesResponse = ResponseMetadata & {\n card_templates?: CardTemplate[];\n};\n\nexport interface CreateCardTemplateRequest {\n /** @example \"Template title\" */\n title: string;\n icon?: Image;\n /**\n * IDs of projects where this template is available\n * @example [\"5\",\"8\"]\n */\n project_ids?: string[];\n /** @example \"5\" */\n card_board_id?: string;\n /** @example \"114\" */\n card_list_id?: string;\n /** @example \"Card title\" */\n card_title: string;\n /**\n * @maxLength 102400\n * @example \"Card content\"\n */\n card_content: string;\n card_checklists?: AddChecklistRequest[];\n /** @example \"uR2dws11\" */\n card_owner_id?: string;\n card_members?: AddMemberRequest[];\n card_tags?: AddTagRequest[];\n /**\n * @min 0\n * @max 4\n * @example 1\n */\n card_priority?: number;\n card_child_cards?: AddChildCardTemplateRequest[];\n}\n\nexport interface CreateCardTemplateResponse {\n card_template?: CardTemplate;\n}\n\nexport interface UpdateCardTemplateRequest {\n /** @example \"Template title\" */\n title?: string | null;\n icon?: Image | null;\n /**\n * IDs of projects where this template is available\n * @example [\"5\",\"8\"]\n */\n project_ids?: string[];\n /** @example \"5\" */\n card_board_id?: string | null;\n /** @example \"114\" */\n card_list_id?: string | null;\n /** @example \"Card title\" */\n card_title?: string | null;\n /**\n * @maxLength 102400\n * @example \"Card content\"\n */\n card_content?: string | null;\n card_checklists?: AddChecklistRequest[];\n /** @example \"uR2dws11\" */\n card_owner_id?: string | null;\n card_members?: AddMemberRequest[];\n card_tags?: AddTagRequest[];\n /**\n * @min 0\n * @max 4\n * @example 1\n */\n card_priority?: number | null;\n card_child_cards?: AddChildCardTemplateRequest[];\n}\n\nexport interface UpdateCardTemplateResponse {\n card_template?: CardTemplate;\n}\n\nexport interface UpdateChildCardRequest {\n /**\n * a position where the child card should be placed in the card\n * @example 0\n */\n position?: number | null;\n}\n\nexport interface CreateCardCopyRequest {\n /** @example \"My Card\" */\n title: string;\n /** @example \"114\" */\n project_id: string;\n /** @example \"5\" */\n board_id: string;\n /** @example \"114\" */\n list_id: string;\n /** @example \"8\" */\n sprint_id: string;\n}\n\n/** @example \"started\" */\nexport enum CardStatus {\n Committed = \"committed\",\n Started = \"started\",\n Completed = \"completed\",\n Cancelled = \"cancelled\",\n}\n\nexport interface ParentCard {\n /** @example \"Implement service requirements\" */\n title?: string;\n /** @example \"42\" */\n card_id?: string;\n list_color?: string;\n status?: CardStatus;\n}\n\nexport interface ChildCard {\n /** @example \"Create illustration for upcoming holidays\" */\n title?: string;\n /** @example \"42\" */\n card_id?: string;\n /** @example \"us4Fsfed\" */\n user_id?: string;\n /** @example \"3\" */\n project_id?: string;\n /** @example \"15\" */\n board_id?: string;\n /** @example \"Ideas\" */\n board_title?: string;\n /** @example \"55\" */\n list_id?: string;\n /** @example \"Done\" */\n list_title?: string;\n list_color?: string;\n status?: CardStatus;\n archived?: Archived;\n}\n\nexport interface LinkedCard {\n /** @example \"Create illustration for upcoming holidays\" */\n title?: string;\n /** @example \"42\" */\n card_id?: string;\n /** @example \"42\" */\n user_id?: string;\n /** @example \"3\" */\n project_id?: string;\n /** @example \"15\" */\n board_id?: string;\n /** @example \"Ideas\" */\n board_title?: string;\n /** @example \"list 1\" */\n list_id?: string;\n /** @example \"list 1\" */\n list_title?: string;\n status?: CardStatus;\n archived?: Archived;\n linked_card_type?: LinkedCardType;\n}\n\nexport interface HintCard {\n /** @example \"Create illustration for upcoming holidays\" */\n title?: string;\n /** @example \"42\" */\n card_id?: string;\n /** @example \"us4Fsfed\" */\n user_id?: string;\n /** @example \"3\" */\n project_id?: string;\n /** @example \"15\" */\n board_id?: string;\n /** @example \"Ideas\" */\n board_title?: string;\n /** @example \"55\" */\n list_id?: string;\n /** @example \"Done\" */\n list_title?: string;\n list_color?: string;\n status?: CardStatus;\n}\n\nexport interface CardBreadcrumb {\n project_id?: string;\n board_id?: string;\n board_title?: string;\n sprint_id?: string;\n list_id?: string;\n list_title?: string;\n list_behavior?: ListBehavior;\n}\n\nexport interface AddChildCardRequest {\n /**\n * ID of the child card that needs to be linked\n * @example \"41\"\n */\n card_id?: string;\n}\n\nexport interface AddChildCardResponse {\n child_card?: ChildCard;\n}\n\nexport interface AddLinkedCardResponse {\n linked_card?: LinkedCard;\n}\n\nexport interface AddLinkedCardRequest {\n /**\n * ID of the card which was linked with current card\n * @example \"41\"\n */\n card_id?: string;\n linked_card_type?: LinkedCardType;\n}\n\nexport interface AddChecklistRequest {\n /** @example \"My Checklist\" */\n title?: string;\n items?: CreateChecklistItemRequest[];\n}\n\nexport interface Checklist {\n /** @example \"232\" */\n id?: string;\n /** @example \"My Checklist\" */\n title?: string;\n /** @example \"Some description\" */\n content?: string;\n /** @example \"32\" */\n card_id?: string;\n /** @example \"uG2sdaOn\" */\n user_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n items?: ChecklistItem[];\n}\n\nexport interface GetChecklistResponse {\n checklist?: Checklist;\n}\n\nexport interface CreateChecklistRequest {\n /** @example \"My Checklist\" */\n title?: string;\n /** @example \"Some description\" */\n content?: string;\n}\n\nexport interface CreateChecklistResponse {\n checklist?: Checklist;\n}\n\nexport interface UpdateChecklistRequest {\n /** @example \"My Checklist\" */\n title?: string | null;\n /** @example \"Some description\" */\n content?: string | null;\n /** @example \"12\" */\n card_id?: string | null;\n /**\n * a position where the checklist should be placed in the card\n * @example 2\n */\n position?: number | null;\n}\n\nexport interface UpdateChecklistResponse {\n checklist?: Checklist;\n}\n\nexport interface ChecklistItem {\n /** @example \"4312\" */\n id?: string;\n /** @example \"Some title\" */\n title?: string;\n /** @example \"Some description\" */\n content?: string;\n /** @example \"432\" */\n checklist_id?: string;\n /** @example \"u-du9saoj1\" */\n user_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n /** @example true */\n checked: boolean;\n}\n\nexport type GetChecklistItemsResponse = ResponseMetadata & {\n checklist_items?: ChecklistItem[];\n};\n\nexport interface CreateChecklistItemRequest {\n /** @example \"Some title\" */\n title: string;\n /** @example \"Some description\" */\n content?: string;\n /**\n * checked state of the item. defaults to false.\n * @example false\n */\n checked?: boolean;\n}\n\nexport interface CreateChecklistItemResponse {\n checklist_item?: ChecklistItem;\n}\n\nexport interface UpdateChecklistItemRequest {\n /** @example \"Some title\" */\n title?: string | null;\n /** @example \"Some description\" */\n content?: string | null;\n /** @example \"23\" */\n checklist_id?: string | null;\n /**\n * checked state of the item.\n * @example false\n */\n checked?: boolean | null;\n /**\n * a position where the item should be placed in the checklist\n * @example 4\n */\n position?: number | null;\n}\n\nexport interface UpdateChecklistItemResponse {\n checklist_item?: ChecklistItem;\n}\n\nexport interface Sprint {\n /** @example \"1\" */\n id?: string;\n /** @example \"tDsu0j19\" */\n team_id?: string;\n /** @example \"2\" */\n project_id?: string;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** @example \"Sprint 1\" */\n title?: string;\n /** @example \"This is the first sprint\" */\n content?: string;\n state?: SprintState;\n /** lists/statuses for the sprint */\n lists?: List[];\n /** snapshots of unfinished cards in the sprint */\n unfinished_cards?: Card[];\n /** unix timestamp in seconds */\n start_date?: STime;\n /** unix timestamp in seconds */\n end_date?: STime;\n /** unix timestamp in seconds */\n override_end_date?: STime;\n layout?: BoardLayout;\n /** progress of the sprint */\n progress?: SprintDayProgress[][];\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n}\n\nexport enum SprintState {\n Planned = \"planned\",\n Active = \"active\",\n Completed = \"completed\",\n Canceled = \"canceled\",\n}\n\nexport interface SprintCardStatus {\n /**\n * unique sprint status uuid\n * @example \"688a7717-f1ea-4955-9f5f-6eca66e98f64\"\n */\n id?: string;\n /** @example \"To Do\" */\n title: string;\n status: CardStatus;\n}\n\nexport interface SprintDayProgress {\n status?: CardStatus;\n /**\n * number of cards in the status\n * @example 3\n */\n count?: number;\n /**\n * total estimate points of cards in the status\n * @example 5\n */\n pts?: number;\n}\n\nexport interface GetSprintResponse {\n sprint?: Sprint;\n}\n\nexport type GetSprintsResponse = ResponseMetadata & {\n sprints?: Sprint[];\n};\n\nexport interface CreateSprintRequest {\n /** @example \"Sprint 1\" */\n title?: string;\n /** @example \"This is the first sprint\" */\n content?: string;\n /** @example \"2\" */\n project_id: string;\n}\n\nexport interface CreateSprintResponse {\n sprint?: Sprint;\n}\n\nexport interface UpdateSprintRequest {\n /** @example \"Sprint 1\" */\n title?: string | null;\n /** @example \"This is the first sprint\" */\n content?: string | null;\n /** @example \"canceled\" */\n state?: \"canceled\" | \"completed\" | null;\n /** unix timestamp in seconds */\n start_date?: STime | null;\n /** unix timestamp in seconds */\n end_date?: STime | null;\n}\n\nexport interface UpdateSprintResponse {\n sprint?: Sprint;\n}\n\nexport interface SprintSettings {\n statuses?: SprintCardStatus[];\n /**\n * length of the sprint in days\n * @example 14\n */\n length?: number;\n /**\n * length of the cooldown period in days\n * @example 7\n */\n cooldown?: number;\n /**\n * day of the week to start the sprint (0 = Sunday, 1 = Monday, ..., 6 = Saturday)\n * @example 1\n */\n start_day?: number;\n /**\n * whether sprints are enabled for the project\n * @example true\n */\n enabled: boolean;\n /** Generic mapping of version control software to automate state of cards in boards. Specifically which list they reside in */\n vcs_mapping?: VCSMapping;\n layout?: BoardLayout;\n /** unix timestamp in seconds */\n time_updated?: STime;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n}\n\nexport interface GetSprintSettingsResponse {\n sprint_settings?: SprintSettings;\n}\n\nexport interface SetSprintSettingsRequest {\n /** ordered list of statuses for the sprint */\n statuses: SprintCardStatus[];\n /**\n * length of the sprint in days\n * @example 14\n */\n length: 7 | 14 | 21 | 28 | 35 | 42 | 49 | 56;\n /**\n * length of the cooldown period in days\n * @example 7\n */\n cooldown: 0 | 7 | 14 | 21 | 28;\n /**\n * day of the week to start the sprint (0 = Sunday, 1 = Monday, ..., 6 = Saturday)\n * @example 1\n */\n start_day: 0 | 1 | 2 | 3 | 4 | 5 | 6;\n /**\n * whether sprints are enabled for the project\n * @example true\n */\n enabled: boolean;\n vcs_mapping?: VCSMappingUpdate | null;\n layout?: BoardLayout;\n}\n\nexport interface SetSprintSettingsResponse {\n sprint_settings?: SprintSettings;\n}\n\nexport interface LoginEmailRequest {\n /** @example \"user@example.com\" */\n email: string;\n /** @example \"p4ssw0rd123$\" */\n password: string;\n}\n\nexport interface SendLoginCodeEmailRequest {\n /** @example \"user@example.com\" */\n email: string;\n}\n\nexport interface LoginWithCodeRequest {\n /** @example \"user@example.com\" */\n email: string;\n /** @example \"123456\" */\n code: string;\n}\n\nexport interface LoginOAuthCodeRequest {\n /** @example \"123456\" */\n code: string;\n /**\n * redirect_uri param that was used to obtain the OAuth authorization code\n * @example \"superthread://oauth2, https://app.superthread.com/oauth2\"\n */\n redirect_uri: string;\n}\n\nexport interface LoginWithInviteRequest {\n /**\n * deprecated\n * @example \"iARGLH5d\"\n */\n invite_id?: string;\n /** @example \"HZW0HQBgq8i8A2hv\" */\n link_code?: string;\n}\n\nexport interface LoginWithInviteResponse {\n /**\n * the team you were invited to\n * @example \"tARGLH5d\"\n */\n team_id?: string;\n /**\n * the project you were invited to\n * @example \"1\"\n */\n project_id?: string;\n}\n\nexport interface LogoutResponse {\n /** @example \"https://app.superthread.com/login\" */\n logout_redirect_url: string;\n}\n\nexport interface ResendInviteLinkEmailRequestByUser {\n /** @example \"123456\" */\n link_code?: string;\n /**\n * deprecated\n * @example \"iARGLH5d\"\n */\n invite_id?: string;\n}\n\nexport interface ResendInviteLinkEmailRequestByUserResponse {\n /** this is the email address that the new invite link was sent to */\n email?: string;\n}\n\nexport interface ResendInviteLinkEmailRequestByTeam {\n /** @example \"u123abc\" */\n invitee_user_id?: string;\n /**\n * deprecated\n * @example \"person@domain.com\"\n */\n invitee_email?: string;\n}\n\nexport interface BoardSearchResult {\n /** @example \"4\" */\n id?: string;\n /** @example \"New features\" */\n title?: string;\n /** @example \"2\" */\n project_id?: string;\n /** board archived status */\n archived?: Archived;\n /** board layout */\n layout?: BoardLayout;\n}\n\nexport interface PageSearchResult {\n /** @example \"24\" */\n id?: string;\n icon?: Image;\n /** @example \"Page title\" */\n title?: string;\n /** @example \"2\" */\n project_id?: string;\n /** @example \"this is a sample page content\" */\n excerpt?: string;\n /** page archived status */\n archived?: ArchivedPage;\n}\n\nexport interface CardSearchResult {\n /** @example \"13\" */\n id?: string;\n /** @example \"Implement new service\" */\n title?: string;\n /** @example \"2\" */\n project_id?: string;\n /** @example \"14\" */\n board_id?: string;\n /** @example \"1\" */\n sprint_id?: string;\n /** @example \"Ideas\" */\n board_title?: string;\n /** @example \"3\" */\n list_id?: string;\n /** @example \"Backlog\" */\n list_title?: string;\n list_color?: string;\n status?: CardStatus;\n /** @example \"u123abcd\" */\n owner_id?: string;\n members?: Member[];\n /** card archived status */\n archived?: Archived;\n /** brief view of epic to be used in a card */\n epic?: EpicBrief;\n parent_card?: ParentCard;\n}\n\nexport interface EpicSearchResult {\n /** @example \"13\" */\n id?: string;\n /** @example \"Implement new service\" */\n title?: string;\n /** @example \"3\" */\n list_id?: string;\n /** @example \"Backlog\" */\n list_title?: string;\n list_color?: string;\n status?: CardStatus;\n /** @example \"u123abcd\" */\n owner_id?: string;\n members?: Member[];\n /** card archived status */\n archived?: Archived;\n icon?: Image;\n /** @example \"epic\" */\n type?: string;\n}\n\nexport interface ProjectSearchResult {\n /** @example \"2\" */\n id?: string;\n icon?: Image;\n /** @example \"Project title\" */\n title?: string;\n /** @example 5 */\n total_members?: number;\n /** @example \"u2DdoERz\" */\n user_id?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n}\n\nexport interface NoteSearchResult {\n /** @example \"21\" */\n id?: string;\n /** @example \"Page title\" */\n title?: string;\n /** @example \"this is a sample note content\" */\n excerpt?: string;\n /** unix timestamp in seconds */\n time_created?: STime;\n}\n\nexport type SearchResults = ResponseMetadata & {\n results?: SearchResult[];\n boards?: BoardSearchResult[];\n cards?: CardSearchResult[];\n pages?: PageSearchResult[];\n projects?: ProjectSearchResult[];\n epics?: EpicSearchResult[];\n notes?: NoteSearchResult[];\n};\n\nexport interface SearchResult {\n board?: BoardSearchResult;\n page?: PageSearchResult;\n card?: CardSearchResult;\n project?: ProjectSearchResult;\n epic?: EpicSearchResult;\n note?: NoteSearchResult;\n}\n\nexport type GetSearchBoardsResponse = ResponseMetadata & {\n boards?: BoardSearchResult[];\n};\n\nexport type GetSearchListsResponse = ResponseMetadata & {\n lists?: List[];\n};\n\nexport type GetSearchTagsResponse = ResponseMetadata & {\n tags?: Tag[];\n};\n\nexport type View = ViewFilters & {\n /** @example \"1\" */\n id?: string;\n /** @example \"tARGLH5d\" */\n team_id?: string;\n /** @example \"u2DdoERz\" */\n owner_user_id?: string;\n /** @example \"card\" */\n type?: \"board\" | \"card\" | \"page\";\n /** @example \"my view\" */\n name?: string;\n /** @example false */\n shared?: boolean;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n};\n\nexport interface ViewFilters {\n board_filters?: {\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n time_created?: DateRangeFilter;\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n time_updated?: DateRangeFilter;\n include?: BoardViewFilter;\n exclude?: BoardViewFilter;\n sort_by?: ViewBoardSortBy;\n } | null;\n card_filters?: {\n is_parent?: boolean | null;\n is_child?: boolean | null;\n /** Filter on cards that have an estimate */\n has_estimate?: boolean | null;\n /** Filter on either: no members or at least 1 member assigned */\n has_members?: boolean | null;\n /** Filter on cards that have a priority */\n has_priority?: boolean | null;\n /** Filter on cards that have a non empty status */\n has_status?: boolean | null;\n /** Filter on cards that have no tags or at least 1 tag */\n has_tags?: boolean | null;\n /** Filter on cards that have no links or at least 1 link */\n has_linked_card?: boolean | null;\n /** Filter on cards that have a non empty due date */\n has_due_date?: boolean | null;\n /** Filter on cards that have a non empty start date */\n has_start_date?: boolean | null;\n /** Filter on cards that have a non empty completed date */\n has_completed_date?: boolean | null;\n /** Filter on cards that have a parent card */\n has_parent_card?: boolean | null;\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n start_date?: DateRangeFilter;\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n completed_date?: DateRangeFilter;\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n due_date?: DateRangeFilter;\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n time_created?: DateRangeFilter;\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n time_updated?: DateRangeFilter;\n include?: CardViewFilter;\n exclude?: CardViewFilter;\n sort_by?: ViewCardSortBy;\n };\n page_filters?: {\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n time_created?: DateRangeFilter;\n /** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\n time_updated?: DateRangeFilter;\n include?: PageViewFilter;\n exclude?: PageViewFilter;\n sort_by?: ViewPageSortBy;\n } | null;\n}\n\n/** Expects unix time in seconds for each property but also supports date math such as 'now-1d/d', which reads as current time minus yesterday rounded down to the start of the day. */\nexport interface DateRangeFilter {\n /**\n * before is inclusive, meaning that you can pass 0 to include empty dates\n * @example \"now-1d\"\n */\n before?: string;\n /**\n * after is exclusive, meaning that you can pass 0 to exclude empty dates\n * @example \"1620997103||-2h\"\n */\n after?: string;\n}\n\nexport interface BoardViewFilter {\n /** List of board ids */\n ids?: string[];\n content?: string;\n /** List of project ids */\n projects?: string[];\n /** List of user ids */\n creators?: string[];\n /** List of user ids */\n members?: string[];\n}\n\nexport interface CardViewFilter {\n /** List of card ids */\n ids?: string[];\n content?: string;\n title?: string;\n /** List of board ids */\n boards?: string[];\n /** List of integers representing effort estimation enum for the card. 0 is unset. 1 is least, 5 is greatest. will map to different values depending on project settings. */\n estimates?: number[];\n /** List of list ids */\n lists?: string[];\n /** List of integers representing priorities */\n priority?: number[];\n /** List of project ids */\n projects?: string[];\n /** List of user ids */\n creators?: string[];\n /** List of user ids */\n owners?: string[];\n /** List of user ids */\n members?: string[];\n /** List of card statuses */\n statuses?: CardStatus[];\n /** List of external link types */\n external_links?: ExternalLinkType[];\n /** List of link card types */\n linked_cards?: LinkedCardType[];\n /** List of tag ids */\n tags?: string[];\n /** List of parent card ids */\n parent_cards?: string[];\n /** List of epics ids */\n epics?: string[];\n}\n\nexport interface PageViewFilter {\n /** List of page ids */\n ids?: string[];\n content?: string;\n /** List of project ids */\n projects?: string[];\n /** List of user ids */\n creators?: string[];\n /** List of user ids */\n members?: string[];\n}\n\nexport type ViewResults = ResponseMetadata & {\n boards?: Board[];\n cards?: Card[];\n pages?: Page[];\n};\n\n/** @example {\"field\":\"time_created\",\"order_ascending\":true} */\nexport interface ViewCardSortBy {\n field?: \"time_created\" | \"time_updated\" | \"status\" | \"priority\" | \"due_date\" | \"estimate\";\n order_ascending?: boolean;\n}\n\n/** @example {\"field\":\"time_created\",\"order_ascending\":true} */\nexport interface ViewBoardSortBy {\n field?: \"time_created\" | \"time_updated\";\n order_ascending?: boolean;\n}\n\n/** @example {\"field\":\"time_created\",\"order_ascending\":true} */\nexport interface ViewPageSortBy {\n field?: \"time_created\" | \"time_updated\";\n order_ascending?: boolean;\n}\n\nexport type GetViewsResponse = ResponseMetadata & {\n views?: View[];\n};\n\nexport type GetViewPreviewRequest = ViewFilters & {\n /** @example \"card\" */\n type?: \"board\" | \"card\" | \"page\";\n};\n\nexport type CreateViewRequest = ViewFilters & {\n /** @example \"my view\" */\n name?: string;\n /** @example \"card\" */\n type?: \"board\" | \"card\" | \"page\";\n /** @example false */\n shared?: boolean;\n};\n\nexport type UpdateViewRequest = ViewFilters & {\n /** @example \"my view\" */\n name?: string | null;\n /** @example \"card\" */\n type?: string | null;\n /** @example false */\n shared?: boolean | null;\n};\n\nexport interface ResponseMetadata {\n /** @example \"dmsjqh9d8w1hdjosjaasda\" */\n cursor: string;\n /** @example 14 */\n count: number;\n}\n\nexport interface Error {\n /** @example \"err5f744ab\" */\n id?: string;\n /**\n * @format int32\n * @example 403\n */\n code?: number;\n /**\n * Superthread Error Code (`SEC`): A structured error code.\n * Format: `SEC:{ServiceID}-{InternalErrorCode}`.\n * - `SEC`: Prefix for all structured error codes.\n * - `ServiceID`: First 3 characters identify the service, '000' is reserved for generic errors.\n * - `InternalErrorCode`: the next (last) 5 characters define the specific error.\n * @pattern ^SEC:\\d{8}$\n * @example \"SEC:000-010011\"\n */\n sec?: string;\n /**\n * A user-friendly error message\n * @example \"You do not have access to this resource\"\n */\n message?: string;\n /** unix timestamp in seconds */\n date?: STime;\n}\n\n/** string array representing an order of IDs */\nexport type Order = object | null;\n\n/** @example \"America/Los_Angeles\" */\nexport type TimezoneID = string;\n\n/**\n * unix timestamp in seconds\n * @format int64\n * @example 1608742037016\n */\nexport type STime = number;\n\n/**\n * unix timestamp in seconds\n * @format int64\n * @example 1608742037016\n */\nexport type STimePtr = number | null;\n\nexport type IDNode = object | null;\n\nexport type FlatNode = object | null;\n\n/** @example \"board\" */\nexport enum BoardLayout {\n Board = \"board\",\n List = \"list\",\n Timeline = \"timeline\",\n Calendar = \"calendar\",\n}\n\n/** @example \"blue\" */\nexport enum TagColor {\n Fog = \"fog\",\n Slate = \"slate\",\n Grey = \"grey\",\n Charcoal = \"charcoal\",\n Black = \"black\",\n Red = \"red\",\n Orange = \"orange\",\n Yellow = \"yellow\",\n Green = \"green\",\n Ocean = \"ocean\",\n Blue = \"blue\",\n Purple = \"purple\",\n Pink = \"pink\",\n}\n\n/** @example \"blocks\" */\nexport enum LinkedCardType {\n Blocks = \"blocks\",\n BlockedBy = \"blocked_by\",\n Related = \"related\",\n Duplicates = \"duplicates\",\n}\n\nexport interface CardHintTag {\n name?: \"bug\" | \"feature\";\n}\n\nexport interface CardHintRelation {\n card?: HintCard;\n /**\n * similarity score between 0 and 1\n * @format float64\n * @example 0.8\n */\n similarity?: number;\n}\n\nexport interface CardHint {\n /**\n * defines the type of hint\n * @example \"tag\"\n */\n type?: \"tag\" | \"relation\";\n /** only present if type is tag */\n tag?: CardHintTag | null;\n /** only present if type is relation */\n relation?: CardHintRelation | null;\n}\n\nexport interface CardHintAction {\n /**\n * defines the type of action\n * @example \"ignore\"\n */\n type?: \"ignore\";\n /** tag slug to ignore */\n tag_slug?: string | null;\n /** card id to ignore */\n related_card_id?: string | null;\n}\n\nexport interface UpdateCardHintsRequest {\n /** @minItems 1 */\n actions?: CardHintAction[];\n}\n\nexport interface File {\n /** @example \"42\" */\n id?: string;\n /** @example \"t4Ads0rx\" */\n team_id?: string;\n /** @example \"image/png\" */\n type?: string;\n /** @example \"my_image.png\" */\n name?: string;\n /** @example \"https://example.com/path/to/file.png\" */\n url?: string;\n /** @example \"431\" */\n page_id?: string;\n /** @example \"433\" */\n card_id?: string;\n /** @example \"udsu0j19\" */\n user_id?: string;\n /** describes a user or robot that created or updated a resource */\n user?: Actor;\n /** describes a user or robot that created or updated a resource */\n user_updated?: Actor;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** @example \"LFE.@D9F01_2%L%MIVD*9Goe-;WB\" */\n blurhash?: string;\n /** @example \"https://example.com/path/to/thumb.png\" */\n thumbnail?: string;\n /** @example \"LFE.@D9F01_2%L%MIVD*9Goe-;WB\" */\n thumbnail_blurhash?: string;\n /** true if the file is an attachment, false if it is referenced inline within text */\n is_attachment?: boolean;\n}\n\nexport interface Tag {\n /** @example \"u-dsu0j19\" */\n id?: string;\n /** @example \"u-dsu0j19\" */\n team_id?: string;\n /** @example \"5\" */\n project_id?: string;\n /** @example \"todo\" */\n name?: string;\n /** @example \"todo\" */\n slug?: string;\n color?: TagColor;\n /**\n * number of cards that use this tag\n * @example 17\n */\n total_cards?: number;\n}\n\nexport interface GetFileResponse {\n file?: File;\n}\n\nexport type GetFilesResponse = ResponseMetadata & {\n files?: File[];\n};\n\nexport type UploadFilesResponse = ResponseMetadata & {\n files?: File[];\n};\n\nexport interface UpdateFileRequest {\n /** @example \"my_file_name\" */\n name?: string | null;\n /**\n * the page id to attach the file to\n * @example \"41\"\n */\n page_id?: string | null;\n /**\n * the card id to attach the file to\n * @example \"12\"\n */\n card_id?: string | null;\n /** associate this file with a resource, listing it as an attachment. Only relevant when uploading files to cards. Defaults to false */\n attachment?: boolean | null;\n}\n\nexport interface UpdateFileResponse {\n file?: File;\n}\n\nexport interface Image {\n type: \"image\" | \"icon\" | \"emoji\";\n /**\n * Depending on the type this can be a URL, base64 image data, emoji unicode or an icon name\n * @example \"data:image/png;base64, iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHElEQVQI12P4//8/w38GIAXDIBKE0DHxgljNBAAO9TXL0Y4OHwAAAABJRU5ErkJggg==\"\n */\n src: string;\n /** @example \"LEHV6nWB2yk8pyoJadR*.7kCMdnj\" */\n blurhash?: string;\n /** @example \"black\" */\n color?: string;\n /**\n * Emoji string ID\n * @example \"thumbsup\"\n */\n emoji?: string;\n}\n\nexport type CoverImage = Image & {\n positionY?: number;\n};\n\nexport interface Notification {\n /** @example \"44e4bc86-f3a8-11eb-9a03-0242ac130003\" */\n id?: string;\n type?: NotificationType;\n /** unix timestamp in seconds */\n time_created?: STime;\n /** unix timestamp in seconds */\n time_updated?: STime;\n seen: boolean;\n read: boolean;\n interacted: boolean;\n /** type of the resource that is the subject of the action */\n resource_type?: \"card\" | \"board\" | \"sprint\" | \"project\" | \"page\" | \"epic\";\n /**\n * id of the resource that is the subject of the action\n * @example \"7\"\n */\n resource_id?: string;\n /**\n * name of the resource that is the subject of the action\n * @example \"Backlog Board\"\n */\n resource_name?: string;\n resource_icon?: Image;\n /**\n * id of the user who performed the action (moved the card, archived the page, etc.)\n * @example \"usg094u4i\"\n */\n actor_user_id?: string;\n /** describes a user or robot that created or updated a resource */\n actor_user?: Actor;\n /**\n * id of the comment related to the action (optional). if parent_comment_id is set this is a child comment\n * @example \"1\"\n */\n comment_id?: string;\n /**\n * parent id of the comment related to the action (optional)\n * @example \"2\"\n */\n parent_comment_id?: string;\n comment_status?: \"resolved\" | \"open\" | \"orphaned\";\n /**\n * some plaintext context or content for the action (optional)\n * @example \"...blah blah blah. This is a snipped of a comment in which the @user is mentioned. Blah blah blah...\"\n */\n excerpt?: string;\n resource_moved?: {\n from?: CardBreadcrumb;\n to?: CardBreadcrumb;\n };\n resource_deleted?: {\n from?: CardBreadcrumb;\n };\n resource_dates_changed?: {\n /** unix timestamp in seconds */\n from_start?: STime;\n /** unix timestamp in seconds */\n to_start?: STime;\n /** unix timestamp in seconds */\n from_end?: STime;\n /** unix timestamp in seconds */\n to_end?: STime;\n };\n /** type of the resource that the subject of a move is being moved to (optional) */\n destination_type?: \"card\" | \"list\" | \"board\" | \"project\";\n /**\n * id of the resource that the subject of a move is being moved to (optional)\n * @example \"3\"\n */\n destination_id?: string;\n /**\n * display name of the resource that the subject of a move is being moved to (optional)\n * @example \"In Progress\"\n */\n destination_name?: string;\n /** id of the project containing the resource */\n project_id?: string;\n /** id of the reaction */\n reaction_id?: string;\n /** unicode of the reaction */\n reaction_unicode?: string;\n /** variation of the reaction */\n reaction_variation?: string;\n /** due date of the resource */\n due_date?: STimePtr;\n /** days remaining until the due date */\n days_remaining?: number;\n}\n\nexport enum NotificationType {\n MemberAdded = \"member_added\",\n MemberRemoved = \"member_removed\",\n UserMentioned = \"user_mentioned\",\n CommentAdded = \"comment_added\",\n CommentStatusUpdated = \"comment_status_updated\",\n ImportCompleted = \"import_completed\",\n ResourceCreated = \"resource_created\",\n ResourceAdded = \"resource_added\",\n ResourcePublished = \"resource_published\",\n ResourceMoved = \"resource_moved\",\n ResourceArchived = \"resource_archived\",\n ResourceDeleted = \"resource_deleted\",\n ResourceDueSoon = \"resource_due_soon\",\n ResourceOverdue = \"resource_overdue\",\n ResourceConverted = \"resource_converted\",\n ResourceCompleted = \"resource_completed\",\n ResourceCancelled = \"resource_cancelled\",\n ResourceDatesChanged = \"resource_dates_changed\",\n ReactionAdded = \"reaction_added\",\n}\n\nexport type NotificationResults = ResponseMetadata & {\n notifications?: Notification[];\n};\n\nexport interface UpdateNotificationsRequest {\n /** ID of the most recent notification the user has seen. The notification and all the notifications before it will be marked as seen. */\n seen_up_to_id?: string | null;\n /** ID of the most recent notification the user has read. The notification and all the notifications before it will be marked as read. */\n read_up_to_id?: string | null;\n}\n\nexport interface UpdateNotificationRequest {\n read?: boolean | null;\n interacted?: boolean | null;\n}\n\nexport interface GetNotificationCountResponse {\n count: number;\n}\n\nexport interface NotificationDigest {\n /** @example \"tARGLH5d\" */\n team_id?: string;\n /** @example \"u2DdoERz\" */\n user_id?: string;\n /** enable/disable the digest */\n enabled: boolean;\n /**\n * frequency of the digest\n * @example \"daily\"\n */\n frequency?: \"daily\";\n /**\n * Time of day to send the digest in the form hh:mm (user's local time, not UTC)\n * @example \"09:00\"\n */\n daily_time?: string;\n /**\n * Days of the week to skip sending the digest. 0 indexed from Sunday. Sunday=0, Monday=1, etc.\n * @example [0,6]\n */\n skip_days: number[];\n}\n\nexport interface GetNotificationDigestResponse {\n digest?: NotificationDigest;\n}\n\nexport interface UpdateNotificationDigestRequest {\n /** enable/disable the digest */\n enabled?: boolean | null;\n /**\n * Time of day to send the digest in the form hh:mm (user's local time, not UTC)\n * @example \"09:00\"\n */\n daily_time?: string | null;\n /**\n * Days of the week to skip sending the digest. 0 indexed from Sunday. Sunday=0, Monday=1, etc.\n * @example [0,6]\n */\n skip_days?: number[];\n}\n\nexport interface UpdateNotificationDigestResponse {\n digest?: NotificationDigest;\n}\n\nexport type GetNotificationDigestSettingsResponse = NotificationForwardingSettings;\n\nexport type UpdateNotificationDigestSettingsRequest = NotificationForwardingSettings;\n\nexport type UpdateNotificationDigestSettingsResponse = NotificationForwardingSettings;\n\nexport interface IntegrationInstallation {\n /** @example \"tARGLH5d\" */\n team_id?: string;\n /** @example \"github\" */\n installation_type?:\n | \"github\"\n | \"gitlab\"\n | \"google_calendar_user_notes\"\n | \"slack_user\"\n | \"slack_team_unfurl\"\n | \"slack_channel_webhook\"\n | \"zapier\";\n /** @example \"65432\" */\n id?: string;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_created?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_updated?: STime;\n /** @example \"u2DdoERz\" */\n user_id_updated?: string;\n github?: GithubInstallation;\n slack_user?: SlackUserInstallation;\n slack_channel_webhook?: SlackChannelWebhookInstallation;\n google_calendar_user_notes?: GoogleCalendarUserNotesInstallation;\n}\n\nexport interface IntegrationSettings {\n calendar_user_notes?: CalendarUserNotesSettings;\n slack_user?: NotificationForwardingSettings;\n}\n\nexport enum IntegrationSettingsType {\n CalendarUserNotes = \"calendar_user_notes\",\n SlackUser = \"slack_user\",\n}\n\nexport interface ExternalLink {\n type?: ExternalLinkType;\n github_pull_request?: GithubPullRequest;\n}\n\nexport enum ExternalLinkType {\n GithubPullRequest = \"github_pull_request\",\n}\n\nexport interface GithubPullRequest {\n id?: number | null;\n number?: number | null;\n state?: string | null;\n title?: string | null;\n body?: string | null;\n html_url?: string | null;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_created?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_updated?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_closed?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_merged?: STime;\n head?: GithubPullRequestBranch | null;\n base?: GithubPullRequestBranch | null;\n draft?: boolean | null;\n merged?: boolean | null;\n}\n\nexport interface GithubRepository {\n id?: number | null;\n name?: string | null;\n html_url?: string | null;\n}\n\nexport interface GithubPullRequestBranch {\n label?: string | null;\n ref?: string | null;\n}\n\nexport interface GithubInstallation {\n /** @example \"superthread-com\" */\n account_name?: string;\n repositories?: GithubRepository[];\n}\n\nexport interface SlackUserInstallation {\n user_id?: string;\n}\n\nexport interface SlackChannelWebhookInstallation {\n /**\n * The slack channel name to which the webhook will be posting messages.\n * @example \"#general\"\n */\n channel?: string;\n /** The slack channel type to which the webhook will be posting messages. */\n channel_type?: \"public\" | \"private\" | \"dm\" | \"group\";\n /**\n * The board ID to which the webhook is associated with.\n * @example \"42\"\n */\n board_id?: string;\n /**\n * The slack webhook URL that holds the token to post messages to the configured channel.\n * @example \"https://hooks.slack.com/services/T00000000/B00000000/XXXXXXXXXXXXXXXXXXXXXXXX\"\n */\n webhook_url?: string;\n}\n\nexport interface GoogleCalendarUserNotesInstallation {\n /** describes a user or robot that created or updated a resource */\n actor_user?: Actor;\n /** The primary calendar ID of the user. */\n primary_calendar_id?: string;\n scopes?: string[];\n}\n\nexport interface CalendarUserNotesSettings {\n /** The number of days to show calendar meetings ahead. */\n days_in_advance: number | null;\n filters?: {\n /** If true, it filters out events where there is no participants, or the only participant is the user. */\n participants: boolean | null;\n /** If true, it filters out events where there is no meeting link available. */\n event_link: boolean | null;\n /** If true, it filters out all-day events. */\n all_day: boolean | null;\n };\n notifications?: {\n /** Enable/disable the notifications about upcoming meetings. */\n enabled: boolean | null;\n /** If true, it includes the meeting name in the notification. */\n meeting_name: boolean | null;\n /** If true, it includes the meeting time in the notification. */\n meeting_time: boolean | null;\n };\n}\n\nexport interface GoogleCalendarEventAttendee {\n /** The email of the attendee. */\n email: string | null;\n /** The name of the attendee. */\n name: string | null;\n /** Set to true when the attendee is the event organizer. */\n organizer: boolean | null;\n}\n\nexport interface GoogleCalendarEvent {\n /** Unique identifier for the event. */\n id?: string;\n /** Identifier for the recurring event series. */\n recurring_event_id?: string;\n /** The event's title or name (Summary in Google Calendar). */\n title?: string;\n /** Detailed description of the event. */\n description?: string;\n /** A list of meeting links with their respective providers. */\n meeting_links?: MeetingLink[];\n /** List of event attendees. */\n attendees?: GoogleCalendarEventAttendee[];\n /** The event's start time. */\n start: STimePtr | null;\n /** The event's end time. */\n end: STimePtr | null;\n /** The last time the event was updated. */\n updated: STimePtr | null;\n /** Free-form text for the event location. */\n location?: string;\n}\n\nexport interface GetGoogleCalendarUserNotesEventsResponse {\n events?: GoogleCalendarEvent[];\n}\n\nexport interface NotificationForwardingSettings {\n notify_added_to_card: boolean | null;\n notify_card_moved: boolean | null;\n notify_card_archived: boolean | null;\n notify_card_deleted: boolean | null;\n notify_card_added: boolean | null;\n notify_card_due_soon: boolean | null;\n notify_card_overdue: boolean | null;\n notify_added_to_page: boolean | null;\n notify_page_published: boolean | null;\n notify_page_moved: boolean | null;\n notify_page_archived: boolean | null;\n notify_page_deleted: boolean | null;\n notify_added_to_board: boolean | null;\n notify_board_archived: boolean | null;\n notify_board_moved: boolean | null;\n notify_board_deleted: boolean | null;\n notify_added_to_project: boolean | null;\n notify_project_archived: boolean | null;\n notify_project_deleted: boolean | null;\n notify_card_comment: boolean | null;\n notify_card_comment_status_updated: boolean | null;\n notify_page_comment: boolean | null;\n notify_page_comment_status_updated: boolean | null;\n notify_mentioned: boolean | null;\n notify_reaction: boolean | null;\n notify_import_complete: boolean | null;\n}\n\nexport type GetIntegrationInstallationsResponse = ResponseMetadata & {\n installations?: IntegrationInstallation[];\n};\n\nexport type GetIntegrationInstallationResponse = IntegrationInstallation;\n\nexport interface CreateIntegrationInstallationRequest {\n github?: {\n id?: string;\n };\n slack_user?: {\n code?: string;\n /** the redirect URI used to obtain the slack code. this is needed by the backend to exchange the code for an access token. */\n redirect_uri?: string;\n };\n slack_team_unfurl?: {\n code?: string;\n /** the redirect URI used to obtain the slack code. this is needed by the backend to exchange the code for an access token. */\n redirect_uri?: string;\n };\n slack_channel_webhook?: {\n code?: string;\n /** the redirect URI used to obtain the slack code. this is needed by the backend to exchange the code for an access token. */\n redirect_uri?: string;\n /** The slack channel name to which the webhook will be posting messages */\n channel?: string;\n /** The board ID to which the webhook is associated with. */\n board_id?: string;\n };\n zapier?: {\n /** zapier's rest hook url to submit events to */\n hook_url?: string;\n /** project ID to which this event relates */\n project_id?: string;\n /** zapier's trigger type (e.g. card.created) */\n type?: string;\n };\n google_calendar_user_notes?: {\n code?: string;\n /** the redirect URI used to obtain the google code. this is needed by the backend to exchange the code for an access token. */\n redirect_uri?: string;\n };\n}\n\nexport type CreateIntegrationInstallationResponse = IntegrationInstallation;\n\nexport type GetIntegrationSettingsResponse = IntegrationSettings;\n\nexport type UpdateIntegrationSettingsRequest = IntegrationSettings;\n\nexport type UpdateIntegrationSettingsResponse = IntegrationSettings;\n\nexport interface Import {\n id?: string;\n source?: ImportSource;\n /** @example \"u123f01z\" */\n user_id?: string;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_created?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_updated?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_started?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_completed?: STime;\n status?: \"unstarted\" | \"in_progress\" | \"success\" | \"error\";\n /** depending on the status, could be either an error message or other details relating to the import */\n additional_notes?: string;\n board_mapping?: ImportBoardMapping[];\n user_mapping?: ImportUserMapping[];\n overview?: ImportOverview;\n}\n\nexport type GetImportsResponse = ResponseMetadata & {\n imports?: Import[];\n};\n\nexport interface CreateImportRequest {\n source?: ImportSource;\n jira_credentials?: ImportJiraCredentials;\n trello_credentials?: ImportTrelloCredentials;\n shortcut_credentials?: ImportShortcutCredentials;\n}\n\nexport interface CreateImportResponse {\n import?: Import;\n}\n\nexport interface UpdateImportRequest {\n board_mapping?: ImportBoardMapping[] | null;\n user_mapping?: ImportUserMapping[] | null;\n import_stale?: boolean | null;\n import_attachments?: boolean | null;\n import_card_covers?: boolean | null;\n}\n\nexport interface UpdateImportResponse {\n import?: Import;\n}\n\nexport interface QueueImportResponse {\n import?: Import;\n}\n\nexport enum ImportSource {\n Trello = \"trello\",\n Jira = \"jira\",\n Shortcut = \"shortcut\",\n}\n\nexport interface ImportBoardMapping {\n source_board_id?: string;\n source_board_title?: string;\n target_project_id?: string;\n /** appears once import has finished */\n target_board_id?: string;\n}\n\nexport interface ImportUserMapping {\n source_user_id?: string;\n source_user_display_name?: string;\n target_user_id?: string | null;\n email_invite?: string | null;\n /** (optional) team role. defaults to 'admin' */\n role?: \"admin\" | \"member\" | null;\n}\n\nexport interface ImportOverview {\n issues?: number;\n issues_skip?: number;\n users?: number;\n users_skip?: number;\n}\n\nexport interface ImportJiraCredentials {\n pac?: string;\n email?: string;\n hostname?: string;\n}\n\nexport interface ImportTrelloCredentials {\n api_key?: string;\n token?: string;\n}\n\nexport interface ImportShortcutCredentials {\n api_token?: string;\n}\n\nexport interface GetTimeReportResponse {\n report?: {\n type?: string;\n /** unix timestamp in seconds */\n time_from?: STime;\n /** unix timestamp in seconds */\n time_to?: STime;\n stats?: CardTotal[];\n data?: TimeReportEntries[];\n };\n}\n\nexport interface CardTotal {\n type?: \"added\" | \"finished\";\n value: number;\n}\n\nexport interface TimeReportEntries {\n label?: string;\n entries?: TimeReportEntry[];\n}\n\nexport interface TimeReportEntry {\n /** unix timestamp in seconds */\n time?: STime;\n value: number;\n}\n\nexport enum EstimateSystem {\n Value = \"\",\n Fibonacci = \"fibonacci\",\n Exponential = \"exponential\",\n Tshirt = \"tshirt\",\n}\n\n/** LLM task definition for simplifying text */\nexport interface LLMTaskSimplify {\n /** text to simplify */\n input: string;\n}\n\n/** LLM task definition for rephrasing text */\nexport interface LLMTaskRephrase {\n /** tone of the rephrase */\n tone: \"academic\" | \"casual\" | \"confident\" | \"friendly\" | \"neutral\" | \"professional\";\n /** text to rephrase */\n input: string;\n}\n\n/** LLM task definition for summarizing text */\nexport interface LLMTaskSummarize {\n /**\n * approximate length of the summary\n * @max 200\n */\n approx_len?: number;\n /** text to summarize */\n input: string;\n}\n\n/** LLM task definition for translating text */\nexport interface LLMTaskTranslate {\n /** language code of the target language */\n lang: \"en\" | \"de\" | \"es\" | \"fr\" | \"it\" | \"ja\" | \"ko\" | \"pt\" | \"zh\";\n /** text to translate */\n input: string;\n}\n\n/** LLM task definition for generating text */\nexport interface LLMTaskGenerate {\n /**\n * description of text to generate\n * @max 200\n */\n instructions: string;\n}\n\n/** instructions describing expected output from a LLM model */\nexport interface CreateLLMTaskRequest {\n /** LLM task definition for rephrasing text */\n rephrase?: LLMTaskRephrase;\n /** LLM task definition for simplifying text */\n simplify?: LLMTaskSimplify;\n /** LLM task definition for summarizing text */\n summarize?: LLMTaskSummarize;\n /** LLM task definition for translating text */\n translate?: LLMTaskTranslate;\n /** LLM task definition for generating text */\n generate?: LLMTaskGenerate;\n}\n\n/** result text of an LLM model output */\nexport interface CreateLLMTaskResponse {\n /** text from the LLM model */\n output?: string;\n}\n\n/** LLM output stream chunk */\nexport interface CreateLLMTaskStreamChunk {\n /** type (output, error, end of stream) */\n t?: \"out\" | \"err\" | \"end\";\n /** value */\n v?: string;\n}\n\n/** request for an AI model to answer a question */\nexport interface AskAIRequest {\n /**\n * question to ask\n * @minLength 10\n */\n question?: string;\n /** type of resources to pull data from */\n resource_types?: (\"card\" | \"page\" | \"comment\" | \"file\" | \"note\")[] | null;\n}\n\n/** result text of an LLM model output */\nexport interface AskAIResponse {\n /** text from the LLM model */\n output?: string;\n}\n\n/** LLM output stream chunk */\nexport interface AskAIStreamChunk {\n /** type (source, output, error, end of stream) */\n t?: \"src\" | \"out\" | \"err\" | \"end\";\n /** value */\n v?: string;\n}\n\nexport interface AgentRunIteration {\n /** Unique Agent Run Iteration identifier. */\n id?: string;\n /** Team ID of the agent run iteration */\n team_id?: string;\n /** Agent Run ID of the agent run iteration */\n agent_run_id?: string;\n /** Input text for the agent run iteration */\n input?: string;\n /** Output text for the agent run iteration */\n output?: string;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n time_created?: STime;\n /**\n * unix timestamp in seconds\n * @example 1608742037016\n */\n time_updated?: STime;\n /** Reason for the agent run iteration */\n reason?: string;\n /** Time taken for the agent run iteration to complete in milliseconds */\n time_elapsed?: number;\n /** Number of input tokens used */\n input_tokens?: number;\n /** Number of output tokens used */\n output_tokens?: number;\n}\n\nexport interface Agent {\n /** Team ID is the workspace identifier. */\n team_id?: string;\n /** Unique Agent identifier (uuid). */\n id?: string;\n /** Display name of the agent */\n name?: string;\n /** URL of the agent's avatar */\n icon?: Image;\n /** A string that is used as the prompt when sendig request to the AI service. */\n prompt?: string;\n /** Defines whether the Agent is active (if true) or inactive (if false). */\n active?: boolean;\n /** List of resources the agent is attached to. */\n attached_resources?: AgentAttachment[];\n /**\n * Unix timestamp in seconds when the Agent was created.\n * @example 1608742037016\n */\n time_created?: STime;\n /**\n * Unix timestamp in seconds when the Agent was last updated.\n * @example 1608742037016\n */\n time_updated?: STime;\n /** User ID of the creator of the agent */\n user_id?: string;\n /** List of runs for the agent */\n runs?: AgentRun[];\n}\n\nexport interface AgentPrompt {\n /** Team ID is the workspace identifier. */\n team_id?: string;\n /** Team ID is the workspace identifier. */\n agent_id?: string;\n /** List of iterations for the agent prompt */\n iterations?: AgentPromptIteration[];\n}\n\nexport interface AgentPromptIteration {\n /** Incremental ID which identifies the iteration. */\n id?: string;\n /** The message that was sent by the user to the AI Assistant. */\n request?: string;\n /** The response by the AI Assistant to the user message. */\n response?: string;\n /** The proposed Agent Prompt by the Assistant for the given iteration. */\n prompt?: string;\n /** Indicates if the prompt is incomplete, achievable, or unachievable based on the given context. Can also be error in case there was an issue talking to the AI Assistant. */\n status?: \"in-progress\" | \"draft\" | \"ready\" | \"unattainable\" | \"error\";\n /** User who sent the request/message to the Assistant. */\n actor_user?: Actor;\n /** Reasoning or notes from the AI Assistant. */\n reasoning?: string;\n /** List of API functions or endpoints considered/recommended to achive the goal. */\n functions?: string[];\n /** List of events suggested by the AI in this iteration. */\n triggers?: string[];\n /**\n * Unix timestamp in seconds when the requeset was created.\n * @example 1608742037016\n */\n time_created?: STime;\n /**\n * Unix timestamp in seconds when the requeset was updated.\n * @example 1608742037016\n */\n time_updated?: STime;\n}\n\nexport interface AgentAttachment {\n /** Agent attachment ID */\n attachment_id?: string;\n /** User who created the attachment */\n user?: Actor;\n /** Defines the type of a resource an Agent can act on or can be attached to. */\n resource_type?: \"epic\" | \"note\" | \"project\" | \"page\" | \"board\" | \"sprint\" | \"card\";\n /**\n * The unique Resource ID which the agent is attached to.\n * '*' means it applies to all resouces of the given type\n */\n resource_id?: string;\n /**\n * Unix timestamp in seconds when the attachment was created.\n * @example 1608742037016\n */\n time_created?: STime;\n}\n\nexport interface AgentRun {\n /** Unique identifier for an Agent invocation */\n id?: string;\n /** Team ID (workspace identifier) where the Agent runs */\n team_id?: string;\n /** The Agent ID of the agent run */\n agent_id?: string;\n /** Defines the type of a resource an Agent can act on or can be attached to. */\n resource_type?: \"epic\" | \"note\" | \"project\" | \"page\" | \"board\" | \"sprint\" | \"card\";\n /** Resource ID on which the Agent is running */\n resource_id?: string;\n /** Status of the agent run */\n status?: \"running\" | \"completed\" | \"failed\";\n /** Time taken for the agent run to complete in milliseconds */\n time_elapsed?: number;\n /** Number of input tokens used */\n input_tokens?: number;\n /** Number of output tokens used */\n output_tokens?: number;\n /** Total cost of the agent run */\n total_cost?: number;\n iterations?: AgentRunIteration[];\n /**\n * Unix timestamp in seconds when the run was created.\n * @example 1608742037016\n */\n time_created?: STime;\n /**\n * Unix timestamp in seconds when the run was last updated.\n * @example 1608742037016\n */\n time_updated?: STime;\n /** User ID of the creator of the agent run */\n user_id?: string;\n}\n\nexport interface AIGeneratedAction {\n /**\n * Unique identifier for the AI generated action\n * @example \"123e4567-e89b-12d3-a456-426614174000\"\n */\n id?: string;\n /** @example \"t921j9j1\" */\n team_id?: string;\n /**\n * Note ID associated with the action\n * @example \"123e4567-e89b-12d3-a456-426614174000\"\n */\n note_id?: string;\n /** Type of the AI generated action */\n type?: \"create_card\" | \"update_card\" | \"move_card\" | \"create_comment\" | \"assign_members\" | \"remove_members\";\n /** Status of the AI generated action */\n status?: ActionStatus;\n /**\n * Unix timestamp in seconds when the action was created.\n * @example 1608742037016\n */\n time_created?: STime;\n /**\n * Unix timestamp in seconds when the action was last updated.\n * @example 1608742037016\n */\n time_updated?: STime;\n /**\n * Unix timestamp in seconds when the action was executed.\n * @example 1608742037016\n */\n time_executed?: STime;\n /** Create a card */\n create_card?: AIGeneratedActionCreateCard | null;\n /** Update a card */\n update_card?: AIGeneratedActionUpdateCard | null;\n /** Move a card */\n move_card?: AIGeneratedActionMoveCard | null;\n /** Create a comment */\n create_comment?: AIGeneratedActionCreateComment | null;\n /** Assign members to a card */\n assign_members?: AIGeneratedActionAssignMembers | null;\n /** Remove members from a card */\n remove_members?: AIGeneratedActionRemoveMembers | null;\n}\n\nexport interface AIGeneratedActionCreateCard {\n /** Title of the card */\n title: string;\n /** Description of the card */\n content: string;\n /** List of assignees of the card */\n assignees?: string[];\n /** Due date of the card */\n due_date?: STime;\n}\n\nexport interface AIGeneratedActionUpdateCard {\n /** Card ID to update */\n card_id: string;\n /** New title of the card */\n title?: string;\n /** Due date of the card */\n due_date?: STime;\n}\n\nexport interface AIGeneratedActionMoveCard {\n /** Card ID to move */\n card_id: string;\n status: ListBehavior;\n}\n\nexport interface AIGeneratedActionCreateComment {\n /** Card ID to add comment to */\n card_id: string;\n /** Content of the comment */\n content: string;\n}\n\nexport interface AIGeneratedActionAssignMembers {\n /** Card ID to update */\n card_id: string;\n /** User IDs to assign to the card */\n user_ids: string[];\n}\n\nexport interface AIGeneratedActionRemoveMembers {\n /** Card ID to update */\n card_id: string;\n /** User IDs to remove from the card */\n user_ids: string[];\n}\n\nexport interface CreateAIAgentRequest {\n /** Display name of the agent */\n name: string;\n /** Agent Icon */\n icon: Image;\n /** Defines whether the Agent is active (if true) or inactive (if false). */\n active: boolean;\n}\n\nexport interface CreateAIAgentResponse {\n agent?: Agent;\n}\n\nexport interface UpdateAIAgentRequest {\n /** Display name of the agent */\n name?: string | null;\n /** Agent Icon */\n icon?: Image | null;\n /** Update the Prompt by sending the Prompt Iteration ID from the conversational prompt builder. */\n prompt_iteration_id?: string | null;\n /** Defines whether the Agent is active (if true) or inactive (if false). */\n active: boolean | null;\n}\n\nexport interface UpdateAIAgentResponse {\n agent?: Agent;\n}\n\nexport interface AttachAIAgentRequest {\n /** Defines the type of a resource an Agent can act on or can be attached to. */\n resource_type: \"epic\" | \"note\" | \"project\" | \"page\" | \"board\" | \"sprint\" | \"card\";\n /** Resource ID to attach the Agent to. */\n resource_id: string;\n}\n\nexport interface AttachAIAgentResponse {\n agent?: Agent;\n}\n\nexport interface DetachAIAgentResponse {\n agent?: Agent;\n}\n\nexport interface GetAIAgentResponse {\n agent?: Agent;\n}\n\nexport type GetAIAgentsResponse = ResponseMetadata & {\n agents?: Agent[];\n};\n\nexport type GetAIAgentRunsResponse = ResponseMetadata & {\n runs?: AgentRun[];\n};\n\nexport interface GetAIAgentPromptIterationsResponse {\n agent_prompt?: AgentPrompt;\n}\n\nexport interface AddAIAgentPromptIterationRequest {\n /** User's message to the AI Agent's Assistant. */\n message: string;\n}\n\nexport interface AddAIAgentPromptIterationResponse {\n prompt_iteration?: AgentPromptIteration;\n}\n\nexport interface VectorSearchResult {\n /** The team ID of the object that was found. */\n team_id?: string;\n /** The type of the object that was found. */\n resource_type?: \"card\" | \"page\" | \"note\" | \"comment\";\n /** The ID of the object that was searched for. */\n resource_id?: string;\n /** The chunk of text that matched the query. */\n extract?: string;\n /**\n * The cosine similarity score of the object to the query (-1 to 1).\n * @min -1\n * @max 1\n */\n cosine_similarity?: number;\n}\n\nexport interface VectorSearchRequest {\n /**\n * The query string to search for. Will be converted to a vector and used to search for similar vectors.\n * @maxLength 1000\n */\n query?: string;\n /**\n * The maximum number of results to return.\n * @min 1\n * @max 20\n * @default 10\n */\n limit?: number;\n /**\n * The number of results to skip.\n * @min 0\n * @max 200\n * @default 0\n */\n offset?: number;\n}\n\nexport interface VectorSearchResponse {\n results?: VectorSearchResult[];\n}\n\nexport type GetAIActionsResponse = ResponseMetadata & {\n actions?: AIGeneratedAction[];\n};\n\nexport interface CreateAIActionsRequest {\n /** Note to generate actions for */\n note_id: string;\n}\n\nexport interface CreateAIActionsResponse {\n actions?: AIGeneratedAction[];\n}\n\nexport interface UpdateAIActionRequest {\n /** Type of the AI generated action */\n card_id?: string | null;\n /** Status of the AI generated action */\n status?: ActionStatus | null;\n}\n\nexport interface UpdateAIActionResponse {\n action?: AIGeneratedAction;\n}\n\n/** Status of the AI generated action */\nexport enum ActionStatus {\n Pending = \"pending\",\n Completed = \"completed\",\n Dismissed = \"dismissed\",\n}\n\n/** onboarding action */\nexport interface OnboardingAction {\n /**\n * type of onboarding action\n * @example \"create_space\"\n */\n type?: string;\n /**\n * status of onboarding action\n * @example \"completed\"\n */\n status?: \"completed\" | \"not_completed\" | \"dismissed\";\n}\n\n/** onboarding action */\nexport type OnboardingActionsResponse = OnboardingAction & {\n /**\n * unix timestamp in seconds\n * @example 1608742037\n */\n time_updated?: STime;\n};\n\n/** list of onboarding actions */\nexport interface GetOnboardingActionsResponse {\n onboarding_actions?: OnboardingActionsResponse[];\n}\n\n/** list of onboarding actions to update */\nexport interface UpdateOnboardingActionsRequest {\n onboarding_actions?: OnboardingAction[];\n}\n\n/** list of onboarding actions */\nexport interface UpdateOnboardingActionsResponse {\n onboarding_actions?: OnboardingActionsResponse[];\n}\n\n/** subscription plan details */\nexport interface Plan {\n /**\n * plan id\n * @example \"standard-yearly-2024.03\"\n */\n id?: string;\n /**\n * stripe price id used to generate checkout session\n * @example \"price_123\"\n */\n stripe_price_id?: string;\n /**\n * is plan currently available\n * @example true\n */\n is_available?: boolean;\n /**\n * plan display name\n * @example \"Standard\"\n */\n name?: string;\n /**\n * plan price, expressed in cents (i.e. 1000 = $10.00)\n * @example 1000\n */\n price?: number;\n /**\n * plan period\n * @example \"monthly\"\n */\n period?: \"monthly\" | \"yearly\";\n}\n\n/** team's subscription */\nexport interface Subscription {\n /** Team ID is the workspace identifier. */\n team_id?: string;\n /**\n * stripe customer id\n * @example \"cus_123\"\n */\n stripe_customer_id?: string;\n /**\n * stripe subscription id\n * @example \"sub_123\"\n */\n stripe_subscription_id?: string;\n /**\n * plan id\n * @example \"standard-2202.05\"\n */\n plan_id?: string;\n /**\n * subscription status\n * @example \"active\"\n */\n status?: \"active\" | \"canceled\" | \"past_due\" | \"trialing\";\n /** data used to display subscription payment, status etc. */\n display_data?: object;\n /** date when subscription will change its status to canceled */\n cancel_at?: STime;\n /** date when the current billing period ends */\n current_period_end?: STime;\n /** number of Stripe seats in the subscription */\n seat_count?: number;\n}\n\n/** team's subscription plan */\nexport interface GetSubscriptionResponse {\n /** team's subscription */\n subscription?: Subscription;\n}\n\n/** list of available subscription plans */\nexport interface GetAvailablePlansResponse {\n plans?: Plan[];\n}\n\n/** billing session request body */\nexport interface CreateBillingSessionRequest {\n /**\n * url to redirect to after successful billing session\n * @example \"https://example.com/\"\n */\n success_url: string;\n /**\n * url to redirect to after canceling billing session\n * @example \"https://example.com/\"\n */\n cancel_url: string;\n /**\n * team name to create customer with\n * @example \"My Team\"\n */\n team_name?: string;\n /**\n * plan id to create billing session for\n * @example \"standard-yearly-2024.03\"\n */\n plan_id: string;\n}\n\n/** billing session response */\nexport interface CreateBillingSessionResponse {\n /**\n * billing portal url\n * @example \"https://example.com/\"\n */\n portal_url?: string;\n}\n\n/** billing management session request body */\nexport interface CreateBillingManagementSessionRequest {\n /**\n * url to redirect to after successfully changing billing information\n * @example \"https://example.com/\"\n */\n return_url: string;\n /**\n * customer id to create billing management session for\n * @example \"cus_123456789\"\n */\n stripe_customer_id: string;\n}\n\n/** billing management session response */\nexport interface CreateBillingManagementSessionResponse {\n /**\n * billing management session portal url\n * @example \"https://example.com/\"\n */\n portal_url?: string;\n}\n\n/** list of cards for an epic */\nexport interface GetAllCardsForEpicResponse {\n cards?: Card[];\n}\n\n/** brief view of epic to be used in a card */\nexport interface EpicBrief {\n /**\n * epic id\n * @example \"e-123\"\n */\n id?: string;\n /**\n * epic title\n * @example \"Epic Title\"\n */\n title?: string;\n /** epics icon */\n icon?: Image;\n}\n\n/** response for adding a card to an epic */\nexport interface AddCardToEpicResponse {\n /** brief view of epic to be used in a card */\n epic?: EpicBrief;\n}\n\n/** users settings */\nexport interface UserSettings {\n /** whether to open links from browser in electron app */\n open_links_in_app: boolean;\n /** jargon for transcription */\n transcription_keywords?: string[];\n /** whether to detect meetings */\n meeting_detection_enabled: boolean;\n /** apps to exclude from meeting detection */\n meeting_detection_excluded_apps?: string[];\n}\n\n/** response for getting users settings */\nexport interface GetUserSettingsResponse {\n /** users settings */\n settings?: UserSettings;\n}\n\n/** request for updating user settings */\nexport interface UpdateUserSettingsRequest {\n /** whether to open links from browser in electron app */\n open_links_in_app?: boolean | null;\n /** jargon for transcription */\n transcription_keywords?: string[] | null;\n /** whether to detect meetings */\n meeting_detection_enabled?: boolean | null;\n /** apps to exclude from meeting detection */\n meeting_detection_excluded_apps?: string[] | null;\n}\n\n/** response for updating user settings */\nexport interface UpdateUserSettingsResponse {\n /** users settings */\n settings?: UserSettings;\n}\n\n/** Daily report question and answer */\nexport interface DailyReportQA {\n /** Question */\n question?: string;\n /** Answer */\n answer?: string;\n}\n\n/** Daily report summary */\nexport interface DailyReportSummary {\n /** The summarized report based on the work context. Generated by AI. */\n proposed?: string;\n /** The corrected summary, or any additional notes added by the user. */\n user?: string;\n /** The final summary, takes into account the all the responses, as well as any additional notes from the user. */\n final?: string;\n}\n\n/** Specifies the user’s work context that the AI leverages to generate the daily report. */\nexport interface DailyReportWorkContext {\n /** List of cards that are assigned to the user but have not been started yet. */\n committed?: Card[];\n /** List of cards that are assigned to the user and is currently being worked on. */\n started?: Card[];\n /** List of cards that are assigned to the user and have been completed recently. */\n completed?: Card[];\n}\n\n/** Daily report context */\nexport interface DailyReportContext {\n /** Specifies the user’s work context that the AI leverages to generate the daily report. */\n work?: DailyReportWorkContext;\n}\n\n/** Daily report for a user */\nexport interface DailyReport {\n /**\n * Team ID/workspace identifier.\n * @example \"tdc4e1b3\"\n */\n team_id?: string;\n /**\n * User ID\n * @example \"u1su0j19\"\n */\n user_id?: string;\n /**\n * Daily report identifier. It follows the format: YYYY-MM-DD.\n * @example \"2025-03-17T10:36:46.741Z\"\n */\n id?: string;\n /** Daily report context */\n context?: DailyReportContext;\n /** Daily report summary */\n summary?: DailyReportSummary;\n /** List of questions and answers for the daily report. */\n questions?: DailyReportQA[];\n /** Date when the report was created. */\n time_created?: STime;\n /** Date when the report was last updated. */\n time_updated?: STime;\n}\n\nexport interface GetDailyReportResponse {\n /** Daily report for a user */\n report?: DailyReport;\n}\n\nexport interface GetDailyReportByIDResponse {\n /** Daily report for a user */\n report?: DailyReport;\n}\n\nexport interface CreateDailyReportResponse {\n /** Daily report for a user */\n report?: DailyReport;\n}\n\nexport interface UpdateDailyReportByIDRequest {\n /** The clarification/notes to the suggested summary. */\n user_summary: string | null;\n /** Daily report question and answer */\n qa: DailyReportQA | null;\n}\n\nexport interface UpdateDailyReportByIDResponse {\n /** Daily report for a user */\n report?: DailyReport;\n}\n\nimport axios, { AxiosInstance, AxiosRequestConfig, AxiosResponse, HeadersDefaults, ResponseType } from \"axios\";\n\nexport type QueryParamsType = Record;\n\nexport interface FullRequestParams extends Omit {\n /** set parameter to `true` for call `securityWorker` for this request */\n secure?: boolean;\n /** request path */\n path: string;\n /** content type of request body */\n type?: ContentType;\n /** query params */\n query?: QueryParamsType;\n /** format of response (i.e. response.json() -> format: \"json\") */\n format?: ResponseType;\n /** request body */\n body?: unknown;\n}\n\nexport type RequestParams = Omit;\n\nexport interface ApiConfig extends Omit {\n securityWorker?: (\n securityData: SecurityDataType | null,\n ) => Promise | AxiosRequestConfig | void;\n secure?: boolean;\n format?: ResponseType;\n}\n\nexport enum ContentType {\n Json = \"application/json\",\n FormData = \"multipart/form-data\",\n UrlEncoded = \"application/x-www-form-urlencoded\",\n Text = \"text/plain\",\n}\n\nexport class HttpClient {\n public instance: AxiosInstance;\n private securityData: SecurityDataType | null = null;\n private securityWorker?: ApiConfig[\"securityWorker\"];\n private secure?: boolean;\n private format?: ResponseType;\n\n constructor({ securityWorker, secure, format, ...axiosConfig }: ApiConfig = {}) {\n this.instance = axios.create({ ...axiosConfig, baseURL: axiosConfig.baseURL || \"https://api.superthread.com/v1\" });\n this.secure = secure;\n this.format = format;\n this.securityWorker = securityWorker;\n }\n\n public setSecurityData = (data: SecurityDataType | null) => {\n this.securityData = data;\n };\n\n protected mergeRequestParams(params1: AxiosRequestConfig, params2?: AxiosRequestConfig): AxiosRequestConfig {\n const method = params1.method || (params2 && params2.method);\n\n return {\n ...this.instance.defaults,\n ...params1,\n ...(params2 || {}),\n headers: {\n ...((method && this.instance.defaults.headers[method.toLowerCase() as keyof HeadersDefaults]) || {}),\n ...(params1.headers || {}),\n ...((params2 && params2.headers) || {}),\n },\n };\n }\n\n protected stringifyFormItem(formItem: unknown) {\n if (typeof formItem === \"object\" && formItem !== null) {\n return JSON.stringify(formItem);\n } else {\n return `${formItem}`;\n }\n }\n\n protected createFormData(input: Record): FormData {\n return Object.keys(input || {}).reduce((formData, key) => {\n const property = input[key];\n const propertyContent: any[] = property instanceof Array ? property : [property];\n\n for (const formItem of propertyContent) {\n const isFileType = formItem instanceof Blob || formItem instanceof File;\n formData.append(key, isFileType ? formItem : this.stringifyFormItem(formItem));\n }\n\n return formData;\n }, new FormData());\n }\n\n public request = async ({\n secure,\n path,\n type,\n query,\n format,\n body,\n ...params\n }: FullRequestParams): Promise> => {\n const secureParams =\n ((typeof secure === \"boolean\" ? secure : this.secure) &&\n this.securityWorker &&\n (await this.securityWorker(this.securityData))) ||\n {};\n const requestParams = this.mergeRequestParams(params, secureParams);\n const responseFormat = format || this.format || undefined;\n\n if (type === ContentType.FormData && body && body !== null && typeof body === \"object\") {\n body = this.createFormData(body as Record);\n }\n\n if (type === ContentType.Text && body && body !== null && typeof body !== \"string\") {\n body = JSON.stringify(body);\n }\n\n return this.instance.request({\n ...requestParams,\n headers: {\n ...(requestParams.headers || {}),\n ...(type && type !== ContentType.FormData ? { \"Content-Type\": type } : {}),\n },\n params: query,\n responseType: responseFormat,\n data: body,\n url: path,\n });\n };\n}\n\n/**\n * @title Public API\n * @version 0.1\n * @baseUrl https://api.superthread.com/v1\n * @contact \n *\n * Superthread Public API Specification\n */\nexport class Api {\n http: HttpClient;\n\n constructor(http: HttpClient) {\n this.http = http;\n }\n\n integrations = {\n /**\n * @description Fetches details about a specific OAuth2 client, including its name, icon URL, privacy policy URL, terms of service URL, and whether it is marked as trusted. Useful for displaying or managing OAuth2 integrations within your system.\n *\n * @tags Integrations, OAuth2\n * @name GetOAuth2Client\n * @summary display OAuth2 client information\n * @request GET:/oauth2/clients/{client_id}\n */\n getOAuth2Client: (clientId: string, params: RequestParams = {}) =>\n this.http.request<\n GetOAuth2ClientResponse,\n {\n error?: Error;\n }\n >({\n path: `/oauth2/clients/${clientId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Configure a new installation for an integration within a workspace. This endpoint supports creating installations for integrations like GitHub, Slack (user, team unfurl, or channel webhook), Zapier and Google Calendar. Provide the required configuration details specific to the integration type, such as Slack channel webhooks, GitHub repository access, or Zapier event triggers. This endpoint helps establish connections between external tools and the workspace for enhanced collaboration and automation. Note: Only one integration type can be created per request due to the structure of the request body.\n *\n * @tags Integrations\n * @name CreateIntegrationInstallation\n * @summary Create installation for an integration\n * @request POST:/{team_id}/integrations/{integration}/installations\n */\n createIntegrationInstallation: (\n teamId: string,\n integration:\n | \"github\"\n | \"google_calendar_user_notes\"\n | \"slack_user\"\n | \"slack_team_unfurl\"\n | \"slack_channel_webhook\"\n | \"zapier\",\n body: CreateIntegrationInstallationRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n CreateIntegrationInstallationResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/integrations/${integration}/installations`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieve a list of installations for a specific integration within a workspace. This endpoint returns a list of installations for integrations like GitHub, Slack (user, team unfurl, or channel webhook), and Zapier. Use this endpoint to view the details of existing installations and their configuration settings.\n *\n * @tags Integrations\n * @name GetIntegrationInstallations\n * @summary Get installations for an integration\n * @request GET:/{team_id}/integrations/{integration}/installations\n */\n getIntegrationInstallations: (\n teamId: string,\n integration:\n | \"github\"\n | \"google_calendar_user_notes\"\n | \"slack_user\"\n | \"slack_team_unfurl\"\n | \"slack_channel_webhook\"\n | \"zapier\",\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetIntegrationInstallationsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/integrations/${integration}/installations`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieve the details of a specific installation within a workspace. This endpoint returns the configuration settings for the requested integration.\n *\n * @tags Integrations\n * @name GetInstallation\n * @summary Get installation\n * @request GET:/{team_id}/integrations/{integration}/installations/{installation_id}\n */\n getInstallation: (\n teamId: string,\n integration:\n | \"github\"\n | \"google_calendar_user_notes\"\n | \"slack_user\"\n | \"slack_team_unfurl\"\n | \"slack_channel_webhook\"\n | \"zapier\",\n installationId: string,\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetIntegrationInstallationResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/integrations/${integration}/installations/${installationId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Remove an installation for an integration within a workspace.\n *\n * @tags Integrations\n * @name DeleteInstallation\n * @summary Delete installation\n * @request DELETE:/{team_id}/integrations/{integration}/installations/{installation_id}\n */\n deleteInstallation: (\n teamId: string,\n integration:\n | \"github\"\n | \"google_calendar_user_notes\"\n | \"slack_user\"\n | \"slack_team_unfurl\"\n | \"slack_channel_webhook\"\n | \"zapier\",\n installationId: string,\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/integrations/${integration}/installations/${installationId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Retrieve the settings for a specific integration within a workspace. This endpoint returns the configuration settings for integrations like Slack (user, team unfurl, or channel webhook) and Zapier. Use this endpoint to view the current settings for each integration.\n *\n * @tags Integrations\n * @name GetIntegrationSettings\n * @summary Get integration settings\n * @request GET:/{team_id}/integrations/{integration}/settings\n */\n getIntegrationSettings: (\n teamId: string,\n integration: \"calendar_user_notes\" | \"slack_user\",\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetIntegrationSettingsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/integrations/${integration}/settings`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Update the settings for a specific integration within a workspace. This endpoint allows you to modify the configuration settings for integrations like Slack (user or channel webhook) and Zapier. Use this endpoint to update the settings for each integration. Note: Only one integration can be updated per request due to the structure of the request body.\n *\n * @tags Integrations\n * @name UpdateIntegrationSettings\n * @summary Update integration settings\n * @request PATCH:/{team_id}/integrations/{integration}/settings\n */\n updateIntegrationSettings: (\n teamId: string,\n integration: \"calendar_user_notes\" | \"slack_user\",\n body: UpdateIntegrationSettingsRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdateIntegrationSettingsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/integrations/${integration}/settings`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieve upcoming events from the user's Google Calendar based on the user's settings defined by the installation ID.\n *\n * @tags Integrations, Notes\n * @name GetGcalEvents\n * @summary Get Google Calendar events\n * @request GET:/{team_id}/integrations/google_calendar_user_notes/{installation_id}/events\n */\n getGcalEvents: (teamId: string, installationId: string, params: RequestParams = {}) =>\n this.http.request<\n GetGoogleCalendarUserNotesEventsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/integrations/google_calendar_user_notes/${installationId}/events`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n };\n auth = {\n /**\n * @description Fetches detailed information about a user, including profile details, teams, locale, and other metadata. Indicates if the token used in the request is privileged or outdated. Privileged tokens are necessary for specific sensitive operations like email updates.\n *\n * @tags Auth\n * @name GetUser\n * @summary Retrieve user details\n * @request GET:/users/{user_id}\n */\n getUser: (userId: string, params: RequestParams = {}) =>\n this.http.request<\n GetUserResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates user profile fields such as name, profile image, timezone, and company information. Allows selective updates, leaving unspecified fields unmodified. A successful request returns the updated user details.\n *\n * @tags Auth\n * @name UpdateUser\n * @summary Update user details\n * @request PATCH:/users/{user_id}\n */\n updateUser: (userId: string, body: UpdateUserRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateUserResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Allows a user to accept an invitation to join a specific team. Requires both the user and team IDs. Successful acceptance updates the team membership and invites metadata. In case the invitation doesn't exists, the request will fail.\n *\n * @tags Auth\n * @name AddUserTeam\n * @summary Accept Team Invite\n * @request PUT:/users/{user_id}/teams/{team_id}\n */\n addUserTeam: (userId: string, teamId: string, params: RequestParams = {}) =>\n this.http.request<\n AddUserTeamResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/teams/${teamId}`,\n method: \"PUT\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Lists all pending team invitations for a user, including invite metadata such as sender details, team information, and invite status. Helps users manage pending invites and track actions required.\n *\n * @tags Auth\n * @name GetPendingInvites\n * @summary Retrieve pending team invites for a user\n * @request GET:/users/{user_id}/pending_invites\n */\n getPendingInvites: (userId: string, params: RequestParams = {}) =>\n this.http.request<\n GetPendingInvitesForUserResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/pending_invites`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Accepts and records user responses to the signup questionnaire. The answers include details such as company size, role, and work type. These responses help in tailoring the platform experience based on user preferences and requirements. A 204 No Content response indicates successful submission, while errors return detailed failure information.\n *\n * @tags Auth\n * @name SubmitSignupAnswers\n * @summary Submit user sign-up answers\n * @request POST:/users/{user_id}/signup_answers\n */\n submitSignupAnswers: (userId: string, body: SubmitUserSignupAnswersRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/signup_answers`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Updates the user's email address, requiring a previously sent verification code for security. The new email must match the address where the code was sent. Returns the updated user details upon successful email change.\n *\n * @tags Auth\n * @name UpdateUserEmail\n * @summary Update a user's email\n * @request POST:/users/{user_id}/email\n */\n updateUserEmail: (userId: string, body: UpdateUserEmailRequest, params: RequestParams = {}) =>\n this.http.request<\n GetUserResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/email`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches the user's settings\n *\n * @tags Auth\n * @name GetUserSettings\n * @summary Get settings for user\n * @request GET:/users/{user_id}/settings\n */\n getUserSettings: (userId: string, params: RequestParams = {}) =>\n this.http.request<\n GetUserSettingsResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/settings`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the user's settings fields. Allows selective updates, leaving unspecified fields unmodified. A successful request returns the updated user details.\n *\n * @tags Auth\n * @name UpdateUserSettings\n * @summary Updates user's settings\n * @request PATCH:/users/{user_id}/settings\n */\n updateUserSettings: (userId: string, body: UpdateUserSettingsRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateUserSettingsResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/settings`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Sends a verification code to the specified new email address, required for updating the user's email. Supports optional resend functionality to resend the code to the same address without requiring additional tokens. Privileged tokens are needed unless using the resend feature. (see /users/me for more details)\n *\n * @tags Auth\n * @name SendUpdateUserEmailCode\n * @summary Send an 'update user email' code\n * @request POST:/users/{user_id}/email/code\n */\n sendUpdateUserEmailCode: (\n userId: string,\n body: SendUpdateUserEmailCodeRequest,\n query?: {\n /** if true, will resend a new code to the same email address without requiring a privileged token */\n resend?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/email/code`,\n method: \"POST\",\n query: query,\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Provides a list of onboarding actions assigned to the user. Each action includes its type, status (e.g., completed, not_completed), and update timestamps. Helps track the user's onboarding progress.\n *\n * @tags Auth\n * @name GetOnboardingActions\n * @summary Get all onboarding actions for a user\n * @request GET:/users/{user_id}/onboarding_actions\n */\n getOnboardingActions: (userId: string, params: RequestParams = {}) =>\n this.http.request<\n GetOnboardingActionsResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/onboarding_actions`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the statuses of onboarding actions for a user. Accepts a list of actions and their new statuses to reflect progress or dismissals. A successful update returns the modified actions.\n *\n * @tags Auth\n * @name UpdateOnboardingActions\n * @summary Update list of onboarding actions for a user\n * @request POST:/users/{user_id}/onboarding_actions\n */\n updateOnboardingActions: (userId: string, body: UpdateOnboardingActionsRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateOnboardingActionsResponse,\n {\n error?: Error;\n }\n >({\n path: `/users/${userId}/onboarding_actions`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new team (new workspace) and assigns the creator the \"Owner\" role. Additional properties like company name, email domain, and subdomain can be specified for better customization.\n *\n * @tags Auth\n * @name CreateTeam\n * @summary Create a team\n * @request POST:/teams\n */\n createTeam: (body: CreateTeamRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateTeamResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches a list of all available subscription plans that can be applied to a team (workspace).\n *\n * @tags Auth\n * @name GetAvailablePlans\n * @summary Get all available plans\n * @request GET:/teams/plans\n */\n getAvailablePlans: (params: RequestParams = {}) =>\n this.http.request<\n GetAvailablePlansResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/plans`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves detailed information about a specified team (workspace), including its properties and settings.\n *\n * @tags Auth\n * @name GetTeam\n * @summary Get a team\n * @request GET:/teams/{team_id}\n */\n getTeam: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetTeamResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates properties of a team (workspace), including its name, logo, domain, and company details. Omitted fields remain unchanged. Note that archiving a team is irreversible via the API.\n *\n * @tags Auth\n * @name UpdateTeam\n * @summary Update a team\n * @request PATCH:/teams/{team_id}\n */\n updateTeam: (teamId: string, body: UpdateTeamRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateTeamResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes the specified team (workspace) and all associated data. This action is irreversible.\n *\n * @tags Auth\n * @name DeleteTeam\n * @summary Delete a team. This will also delete data. This is non reversible.\n * @request DELETE:/teams/{team_id}\n */\n deleteTeam: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n LogoutResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}`,\n method: \"DELETE\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Returns a list of all members belonging to a specified team (workspace), along with their roles and other relevant details.\n *\n * @tags Auth\n * @name GetTeamMembers\n * @summary Get all team members\n * @request GET:/teams/{team_id}/members\n */\n getTeamMembers: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetTeamMembersResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/members`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the role of a specific member (`user_id`) within a workspace (`team_id`). Roles can include owner, admin, member, or guest.\n *\n * @tags Auth\n * @name UpdateMember\n * @summary Update a team member\n * @request PATCH:/teams/{team_id}/members/{user_id}\n */\n updateMember: (teamId: string, userId: string, body: UpdateTeamMemberRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateTeamMemberResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/members/${userId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Removes a specific member (`user_id`) from a workspace (`team_id`). The member is not deleted but is marked as `inactive` and removed from the team.\n *\n * @tags Auth\n * @name RemoveMember\n * @summary Remove a team member\n * @request DELETE:/teams/{team_id}/members/{user_id}\n */\n removeMember: (teamId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n RemoveTeamMemberResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/members/${userId}`,\n method: \"DELETE\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Returns a list of all pending invites for a specified team (workspace). The response includes details about the invitee, the invite status, and the invite expiration date and their requested roles.\n *\n * @tags Auth\n * @name GetTeamInvites\n * @summary Get all pending team invites for a team\n * @request GET:/teams/{team_id}/invites\n */\n getTeamInvites: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetPendingInvitesForTeamResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/invites`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Sends invitations to users to join a team (workspace). Invitees can be assigned roles and optionally linked to specific spaces (projects). Up to 100 invitees can be included in a single request.\n *\n * @tags Auth\n * @name CreateTeamInvite\n * @summary Create team invites\n * @request POST:/teams/{team_id}/invites\n */\n createTeamInvite: (teamId: string, body: CreateTeamInvitesRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateTeamInvitesResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/invites`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Removes pending invites for specified users. Useful for retracting unaccepted invitations by email or user ID.\n *\n * @tags Auth\n * @name DeleteTeamInvite\n * @summary Delete team invites\n * @request DELETE:/teams/{team_id}/invites\n */\n deleteTeamInvite: (teamId: string, body: DeleteTeamInvitesRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/invites`,\n method: \"DELETE\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Resends an invitation email to a user to join the team. Useful for expired or lost invites. The invitee can be specified by their email or user ID.\n *\n * @tags Auth\n * @name ResendInviteLinkCodeEmailByTeam\n * @summary Resend a team invite (sender)\n * @request POST:/teams/{team_id}/invites/resend\n */\n resendInviteLinkCodeEmailByTeam: (\n teamId: string,\n body: ResendInviteLinkEmailRequestByTeam,\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/invites/resend`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Fetches a detailed list of all features and associated limits available to a workspace (`team_id`). This endpoint provides insights into the capabilities, quotas, and restrictions configured for the specified workspace, allowing teams to understand their available resources.\n *\n * @tags Auth\n * @name GetTeamFeatures\n * @summary Get all team features and limits\n * @request GET:/teams/{team_id}/features\n */\n getTeamFeatures: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetTeamFeaturesResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/features`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the status of a specific feature for a team (workspace). The `feature_id` is the feature to toggle and can be found in the team features response.\n *\n * @tags Auth\n * @name SetTeamFeature\n * @summary Toggle a team feature\n * @request PUT:/teams/{team_id}/features/{feature_id}\n */\n setTeamFeature: (teamId: string, featureId: string, body: SetTeamFeatureRequest, params: RequestParams = {}) =>\n this.http.request<\n SetTeamFeatureResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/features/${featureId}`,\n method: \"PUT\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves the subscription details for a specified team (workspace), including the current plan and associated features.\n *\n * @tags Auth\n * @name GetSubscription\n * @summary Get current team's subscription\n * @request GET:/teams/{team_id}/subscription\n */\n getSubscription: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetSubscriptionResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/subscription`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Generates a new billing session for a team (workspace). The session is used to manage billing information and subscriptions. The session is created with the specified plan (plan_id) and billing cycle.\n *\n * @tags Auth\n * @name CreateTeamBillingSession\n * @summary Create a new billing session\n * @request POST:/teams/{team_id}/billing_session\n */\n createTeamBillingSession: (teamId: string, body: CreateBillingSessionRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateBillingSessionResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/billing_session`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a session for managing billing information for a team (workspace). Users can update payment methods and other billing details.\n *\n * @tags Auth\n * @name CreateTeamBillingManagementSession\n * @summary Create a new billing management session\n * @request POST:/teams/{team_id}/billing_management\n */\n createTeamBillingManagementSession: (\n teamId: string,\n body: CreateBillingManagementSessionRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n CreateBillingManagementSessionResponse,\n {\n error?: Error;\n }\n >({\n path: `/teams/${teamId}/billing_management`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Generates a redirect URL for initiating OAuth-based login with the specified authentication provider (e.g., Google). Requires the auth_provider in the path and a relative redirect query parameter specifying where the user should be redirected post-login. Returns the constructed URL or an error for invalid inputs.\n *\n * @tags Auth\n * @name GetOAuthRedirect\n * @summary Get redirect url for oauth sign in\n * @request GET:/auth/idp/{auth_provider}\n */\n getOAuthRedirect: (\n authProvider: \"google\",\n query: {\n /** relative path to redirect user after successful sign in (e.g. /dashboard) */\n redirect: string;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetOAuthRedirectResponse,\n {\n error?: Error;\n }\n >({\n path: `/auth/idp/${authProvider}`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Finalizes the OAuth authentication process. Accepts an authorization code obtained from the OAuth flow on the FE and validates it along with the provided redirect_uri. Upon successful validation, the user is authenticated, and cookies are set. Supports popular OAuth providers such as Google.\n *\n * @tags Auth\n * @name LoginOAuthCode\n * @summary Login with an OAuth code\n * @request POST:/auth/idp/{auth_provider}/code\n */\n loginOAuthCode: (authProvider: \"google\", body: LoginOAuthCodeRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/auth/idp/${authProvider}/code`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Authenticates a user using their email and a one-time code. Sets an authentication cookie upon successful verification. Designed for scenarios where users receive a login code via email for a seamless login experience. Incorrect codes or missing parameters result in an error.\n *\n * @tags Auth\n * @name LoginWithCode\n * @summary Log user in via email and email code\n * @request POST:/auth/code\n */\n loginWithCode: (body: LoginWithCodeRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/auth/code`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Sends a one-time login code to the specified email address. If the user associated with the email does not exist, a new user account is created. Designed to simplify the login process by allowing users to authenticate using codes instead of passwords.\n *\n * @tags Auth\n * @name SendLoginCodeEmail\n * @summary Send login code via email\n * @request POST:/auth/code/send\n */\n sendLoginCodeEmail: (body: SendLoginCodeEmailRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/auth/code/send`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Handles user authentication through a team invite. If the invite is valid, the endpoint creates a new user if one does not exist and authenticates them by setting auth cookies. The user is joined to the team associated with the invite. Returns the team_id for redirection purposes. Invites that are expired or invalid result in an error.\n *\n * @tags Auth\n * @name LoginWithInvite\n * @summary Accept team invite and authenticate user\n * @request POST:/auth/invite\n */\n loginWithInvite: (body: LoginWithInviteRequest, params: RequestParams = {}) =>\n this.http.request<\n LoginWithInviteResponse,\n {\n error?: Error;\n }\n >({\n path: `/auth/invite`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Allows a user to resend a team invite email to the specified email address. Useful for scenarios where the original invite email was not received, lost, or expired. Ensures the invitee has access to join the team by providing an updated invite link.\n *\n * @tags Auth\n * @name ResendInviteLinkCodeEmailByUser\n * @summary Resend a team invite (invitee)\n * @request POST:/auth/invite/send\n */\n resendInviteLinkCodeEmailByUser: (body: ResendInviteLinkEmailRequestByUser, params: RequestParams = {}) =>\n this.http.request<\n ResendInviteLinkEmailRequestByUserResponse,\n {\n error?: Error;\n }\n >({\n path: `/auth/invite/send`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Refreshes the user's authentication token and updates the authentication cookie. This endpoint ensures continuous access to protected resources without requiring re-authentication. If the refresh process fails, an error is returned with relevant details.\n *\n * @tags Auth\n * @name RefreshToken\n * @summary Refresh user access token\n * @request POST:/auth/refresh\n */\n refreshToken: (params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/auth/refresh`,\n method: \"POST\",\n ...params,\n }),\n\n /**\n * @description Logs out the authenticated user by clearing their session and associated cookies. Returns a logout_redirect_url indicating where the user should be redirected after logging out. Any issues during the logout process are returned as errors with detailed information.\n *\n * @tags Auth\n * @name Logout\n * @summary Log out the current user\n * @request POST:/auth/logout\n */\n logout: (params: RequestParams = {}) =>\n this.http.request<\n LogoutResponse,\n {\n error?: Error;\n }\n >({\n path: `/auth/logout`,\n method: \"POST\",\n format: \"json\",\n ...params,\n }),\n };\n projects = {\n /**\n * No description\n *\n * @tags Projects\n * @name GetProjects\n * @summary Get all projects\n * @request GET:/{team_id}/projects\n */\n getProjects: (\n teamId: string,\n query?: {\n /**\n * Flag whether to fetch projects in trash only\n * @default false\n */\n trash?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetProjectsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * No description\n *\n * @tags Projects\n * @name CreateProject\n * @summary Create a new project\n * @request POST:/{team_id}/projects\n */\n createProject: (teamId: string, body: CreateProjectRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateProjectResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetch comprehensive details about a specific project (referred to externally as a \"Space\") within a team (externally referred to as a \"Workspace\").\n *\n * @tags Projects\n * @name GetProject\n * @summary Get a project\n * @request GET:/{team_id}/projects/{project_id}\n */\n getProject: (teamId: string, projectId: string, params: RequestParams = {}) =>\n this.http.request<\n GetProjectResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects/${projectId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Update properties of a project (Space) such as its title, description, privacy settings, and position in the sidebar. You can also set or remove custom icons and adjust estimation systems. All unspecified fields remain unchanged.\n *\n * @tags Projects\n * @name UpdateProject\n * @summary Update a project\n * @request PATCH:/{team_id}/projects/{project_id}\n */\n updateProject: (teamId: string, projectId: string, body: UpdateProjectRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateProjectResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects/${projectId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Permanently delete a project (Space) from the specified team (Workspace). This action cannot be undone, and all associated data will be removed.\n *\n * @tags Projects\n * @name DeleteProject\n * @summary Delete a project\n * @request DELETE:/{team_id}/projects/{project_id}\n */\n deleteProject: (teamId: string, projectId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects/${projectId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Send a project (Space) to the trash within the team (Workspace). This action preserves the project data temporarily for recovery or deletion.\n *\n * @tags Projects\n * @name TrashProject\n * @summary Send project to trash\n * @request POST:/{team_id}/projects/{project_id}/trash\n */\n trashProject: (teamId: string, projectId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects/${projectId}/trash`,\n method: \"POST\",\n ...params,\n }),\n\n /**\n * @description Recover a previously trashed project (Space) within a team (Workspace), reinstating its access and functionality.\n *\n * @tags Projects\n * @name UntrashProject\n * @summary Restore project from trash\n * @request POST:/{team_id}/projects/{project_id}/untrash\n */\n untrashProject: (teamId: string, projectId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects/${projectId}/untrash`,\n method: \"POST\",\n ...params,\n }),\n\n /**\n * @description Transfer ownership of the project (Space) to a specified user within the team (Workspace). The new owner is identified by their unique user ID and gains administrative privileges over the project.\n *\n * @tags Projects\n * @name SetProjectOwner\n * @summary Set project owner\n * @request PUT:/{team_id}/projects/{project_id}/owner\n */\n setProjectOwner: (teamId: string, projectId: string, body: SetProjectOwnerRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects/${projectId}/owner`,\n method: \"PUT\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Add one or more users to a project (Space) with specified roles, such as \"admin\" or \"member.\" This allows the new members to participate in and manage the project's tasks and resources.\n *\n * @tags Projects\n * @name AddProjectMember\n * @summary Add a new project member\n * @request POST:/{team_id}/projects/{project_id}/members\n */\n addProjectMember: (teamId: string, projectId: string, body: AddMembersRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects/${projectId}/members`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Revoke a user's access to a specific project (Space) within the team (Workspace). The user is identified by their unique ID, and their role and permissions in the project are revoked.\n *\n * @tags Projects\n * @name DeleteProjectMember\n * @summary Remove a member from a project\n * @request DELETE:/{team_id}/projects/{project_id}/members/{user_id}\n */\n deleteProjectMember: (teamId: string, projectId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/projects/${projectId}/members/${userId}`,\n method: \"DELETE\",\n ...params,\n }),\n };\n pages = {\n /**\n * @description Returns a list of all available pages for the workspace (`team_id`). Pages are organized by spaces (projects) and can be filtered by `archived` or `updated_recently`.\n *\n * @tags Pages\n * @name GetPages\n * @summary Get all pages\n * @request GET:/{team_id}/pages\n */\n getPages: (\n teamId: string,\n query?: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id?: string;\n archived?: boolean;\n updated_recently?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetPagesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new page in the workspace (`team_id`) under a specified space (project). Pages can be associated with a template for efficient creation and can include a title, content, icon, and optional hierarchy settings.\n *\n * @tags Pages\n * @name CreatePage\n * @summary Create a new page\n * @request POST:/{team_id}/pages\n */\n createPage: (teamId: string, body: CreatePageRequest, params: RequestParams = {}) =>\n this.http.request<\n CreatePageResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Returns a list of all available page templates for the workspace (`team_id`). Templates provide pre-defined content for creating new pages with a specific structure efficiently and can be filtered by space (project) if specified.\n *\n * @tags Pages\n * @name GetPageTemplates\n * @summary Get page templates\n * @request GET:/{team_id}/pages/templates\n */\n getPageTemplates: (\n teamId: string,\n query?: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id?: string;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetPageTemplatesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/templates`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new page template in the workspace (`team_id`). Templates provide pre-defined content for creating new pages with a specific structure efficiently.\n *\n * @tags Pages\n * @name CreatePageTemplate\n * @summary Create a new page template\n * @request POST:/{team_id}/pages/templates\n */\n createPageTemplate: (teamId: string, body: CreatePageTemplateRequest, params: RequestParams = {}) =>\n this.http.request<\n CreatePageTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/templates`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches details of a specific page template identified by the `template_id`. Templates provide pre-defined content for creating new pages with a specific structure efficiently.\n *\n * @tags Pages\n * @name GetPageTemplate\n * @summary Get a page template\n * @request GET:/{team_id}/pages/templates/{template_id}\n */\n getPageTemplate: (teamId: string, templateId: string, params: RequestParams = {}) =>\n this.http.request<\n GetPageTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/templates/${templateId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates properties of a specified page template, including title, content, associated projects (spaces), and icon details. Only provided fields will be modified; omitted fields will remain unchanged.\n *\n * @tags Pages\n * @name UpdatePageTemplate\n * @summary Update a page template\n * @request PATCH:/{team_id}/pages/templates/{template_id}\n */\n updatePageTemplate: (\n teamId: string,\n templateId: string,\n body: UpdatePageTemplateRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdatePageTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/templates/${templateId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes a specified page template from the workspace (`team_id`). This action is irreversible and will remove the template from all associated projects or spaces.\n *\n * @tags Pages\n * @name DeletePageTemplate\n * @summary Delete a page template\n * @request DELETE:/{team_id}/pages/templates/{template_id}\n */\n deletePageTemplate: (teamId: string, templateId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/templates/${templateId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Fetches detailed information about a specified page identified by the `page_id` within a workspace (`team_id`).\n *\n * @tags Pages\n * @name GetPage\n * @summary Get a page\n * @request GET:/{team_id}/pages/{page_id}\n */\n getPage: (teamId: string, pageId: string, params: RequestParams = {}) =>\n this.http.request<\n GetPageResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Modifies properties of a specified page, such as its title, position, and content. Only provided fields will be updated.\n *\n * @tags Pages\n * @name UpdatePage\n * @summary Update a page\n * @request PATCH:/{team_id}/pages/{page_id}\n */\n updatePage: (teamId: string, pageId: string, body: UpdatePageRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdatePageResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Permanently removes a specified page from the workspace (`team_id`). This action is irreversible.\n *\n * @tags Pages\n * @name DeleteAPage\n * @summary Delete a page\n * @request DELETE:/{team_id}/pages/{page_id}\n */\n deleteAPage: (teamId: string, pageId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Retrieves collaboration options for a specified page within a workspace (`team_id`).\n *\n * @tags Pages\n * @name GetPageCollaboration\n * @summary Get collaboration options for a page\n * @request GET:/{team_id}/pages/{page_id}/collaboration\n */\n getPageCollaboration: (teamId: string, pageId: string, params: RequestParams = {}) =>\n this.http.request<\n GetCollaborationResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}/collaboration`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches all versions of a specified page within a workspace (`team_id`). Versions represent snapshots of the page at different points in time and can be restored.\n *\n * @tags Pages\n * @name GetPageVersions\n * @summary Get page versions\n * @request GET:/{team_id}/pages/{page_id}/versions\n */\n getPageVersions: (teamId: string, pageId: string, params: RequestParams = {}) =>\n this.http.request<\n GetPageVersionsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}/versions`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes the icon associated with a specified page. Icons visually differentiate pages within the workspace.\n *\n * @tags Pages\n * @name DeletePageIcon\n * @summary Delete page icon\n * @request DELETE:/{team_id}/pages/{page_id}/icon\n */\n deletePageIcon: (teamId: string, pageId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}/icon`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Deletes the cover image associated with a specified page. This action removes the visual branding or context provided by the image.\n *\n * @tags Pages\n * @name DeletePageCover\n * @summary Delete page cover image\n * @request DELETE:/{team_id}/pages/{page_id}/cover\n */\n deletePageCover: (teamId: string, pageId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}/cover`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Archives a specified page within a workspace (`team_id`). Archiving moves the page to an archived state, making it inaccessible through regular navigation but preserving its data for potential future restoration.\n *\n * @tags Pages\n * @name ArchivePage\n * @summary Archive a page\n * @request PUT:/{team_id}/pages/{page_id}/archive\n */\n archivePage: (teamId: string, pageId: string, params: RequestParams = {}) =>\n this.http.request<\n GetPageResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}/archive`,\n method: \"PUT\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a copy of a specified page, allowing users to reuse its content or structure. The new page can be placed under a parent page or at the root of a space (project).\n *\n * @tags Pages\n * @name CopyPage\n * @summary Create copy of current page\n * @request POST:/{team_id}/pages/{page_id}/copy\n */\n copyPage: (teamId: string, pageId: string, body: CopyPageRequest, params: RequestParams = {}) =>\n this.http.request<\n CopyPageResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}/copy`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Adds a new watcher to a specified page within a workspace (`team_id`). Watchers receive notifications about updates or changes to the page.\n *\n * @tags Pages\n * @name AddPageWatcher\n * @summary Add a new page watcher\n * @request POST:/{team_id}/pages/{page_id}/watchers\n */\n addPageWatcher: (teamId: string, pageId: string, body: AddWatcherRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}/watchers`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Removes a specified user from the list of watchers for a page. Watchers receive notifications about updates or changes to the page.\n *\n * @tags Pages\n * @name DeletePageWatcher\n * @summary Remove a page watcher\n * @request DELETE:/{team_id}/pages/{page_id}/watchers/{user_id}\n */\n deletePageWatcher: (teamId: string, pageId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/pages/${pageId}/watchers/${userId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Retrieves all note templates within the specified workspace (team_id). This endpoint returns an array of note templates visible to the current user. Note templates are pre-configured structures used to create new notes with standardized formatting or content.\n *\n * @tags Pages\n * @name GetNoteTemplates\n * @summary Get note templates\n * @request GET:/{team_id}/notes/templates\n */\n getNoteTemplates: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetNoteTemplatesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/templates`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * No description\n *\n * @tags Pages\n * @name CreateNoteTemplate\n * @summary Create a new note template\n * @request POST:/{team_id}/notes/templates\n */\n createNoteTemplate: (teamId: string, body: CreateNoteTemplateRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateNoteTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/templates`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * No description\n *\n * @tags Pages\n * @name GetNoteTemplate\n * @summary Get a note template\n * @request GET:/{team_id}/notes/templates/{template_id}\n */\n getNoteTemplate: (teamId: string, templateId: string, params: RequestParams = {}) =>\n this.http.request<\n GetNoteTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/templates/${templateId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * No description\n *\n * @tags Pages\n * @name UpdateNoteTemplate\n * @summary Update a note template\n * @request PATCH:/{team_id}/notes/templates/{template_id}\n */\n updateNoteTemplate: (\n teamId: string,\n templateId: string,\n body: UpdateNoteTemplateRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdateNoteTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/templates/${templateId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * No description\n *\n * @tags Pages\n * @name DeleteNoteTemplate\n * @summary Delete a note template\n * @request DELETE:/{team_id}/notes/templates/{template_id}\n */\n deleteNoteTemplate: (teamId: string, templateId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/templates/${templateId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Retrieves all notes within the specified workspace (team_id). This endpoint returns an array of notes visible to the current user, enabling a comprehensive view of all accessible notes in the workspace.\n *\n * @tags Pages\n * @name GetNotes\n * @summary Get all notes\n * @request GET:/{team_id}/notes\n */\n getNotes: (\n teamId: string,\n query?: {\n /** Cursor for pagination */\n cursor?: string;\n /** Max number of items to return, defaults to 50 if unset */\n count?: number;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetNotesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new note within the specified workspace (team_id). The note object is provided in the request body, including the note title, content, and any other relevant details (optional fields include transcript and user notes). Upon successful creation, the new note is returned in the response.\n *\n * @tags Pages\n * @name CreateNote\n * @summary Create a new note\n * @request POST:/{team_id}/notes\n */\n createNote: (teamId: string, body: CreateNoteRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateNoteResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves a specific note within the specified workspace (`team_id`). The note is identified by the provided note_id and returned in the response.\n *\n * @tags Pages\n * @name GetNote\n * @summary Get a note\n * @request GET:/{team_id}/notes/{note_id}\n */\n getNote: (teamId: string, noteId: string, params: RequestParams = {}) =>\n this.http.request<\n GetNoteResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/${noteId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates specific fields of a note identified by `note_id`. The request body should include the fields to be updated, such as title, transcript, or user notes. All omitted fields are left unmodified.\n *\n * @tags Pages\n * @name UpdateNote\n * @summary Update a note\n * @request PATCH:/{team_id}/notes/{note_id}\n */\n updateNote: (teamId: string, noteId: string, body: UpdateNoteRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateNoteResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/${noteId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Permanently deletes a note identified by `note_id` from the specified workspace (`team_id`). This operation cannot be undone and should be used with caution.\n *\n * @tags Pages\n * @name DeleteNote\n * @summary Delete a note\n * @request DELETE:/{team_id}/notes/{note_id}\n */\n deleteNote: (teamId: string, noteId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/${noteId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Adds a new attendee to a specified note within a workspace (`team_id`).\n *\n * @tags Pages\n * @name AddNoteAttendee\n * @summary Add a new note attendee\n * @request POST:/{team_id}/notes/{note_id}/attendees\n */\n addNoteAttendee: (teamId: string, noteId: string, body: AddAttendeeRequest, params: RequestParams = {}) =>\n this.http.request<\n AddAttendeeResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/${noteId}/attendees`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Removes an attendee from a specified note within a workspace (`team_id`).\n *\n * @tags Pages\n * @name RemoveNoteAttendee\n * @summary Remove an attendee from the Note\n * @request DELETE:/{team_id}/notes/{note_id}/attendees/{email}\n */\n removeNoteAttendee: (teamId: string, noteId: string, email: string, params: RequestParams = {}) =>\n this.http.request<\n RemoveAttendeeResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/${noteId}/attendees/${email}`,\n method: \"DELETE\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Applies a pre-defined note template to a specific note identified by `note_id`. The template is selected based on the provided `note_template_id` within the request body. This operation is useful for standardizing note structures.\n *\n * @tags Pages\n * @name ApplyNoteTemplate\n * @summary Apply a note template\n * @request POST:/{team_id}/notes/{note_id}/template\n */\n applyNoteTemplate: (teamId: string, noteId: string, body: ApplyNoteTemplateRequest, params: RequestParams = {}) =>\n this.http.request<\n ApplyNoteTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/${noteId}/template`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates specific fields of an AI-enhanced note identified by `enhanced_note_id`. This note is linked to a base note (`note_id`). The request body should contain the fields to modify, such as content or title. All omitted fields are left unmodified.\n *\n * @tags Pages\n * @name UpdateEnhancedNote\n * @summary Update an AI enhanced note\n * @request PATCH:/{team_id}/notes/{note_id}/enhanced/{enhanced_note_id}\n */\n updateEnhancedNote: (\n teamId: string,\n noteId: string,\n enhancedNoteId: string,\n body: UpdateEnhancedNoteRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdateEnhancedNoteResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/${noteId}/enhanced/${enhancedNoteId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Permanently deletes an AI-enhanced note identified by `enhanced_note_id`. This note is linked to a base note (`note_id`). This operation cannot be undone and should be used with caution.\n *\n * @tags Pages\n * @name DeleteEnhancedNote\n * @summary Delete an enhanced note\n * @request DELETE:/{team_id}/notes/{note_id}/enhanced/{enhanced_note_id}\n */\n deleteEnhancedNote: (teamId: string, noteId: string, enhancedNoteId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notes/${noteId}/enhanced/${enhancedNoteId}`,\n method: \"DELETE\",\n ...params,\n }),\n };\n comments = {\n /**\n * @description Fetch all activities associated with a specific resource within a workspace (`team_id`). You can specify either a `page` or `card` as the resource, but one and only one must be specified. Optionally, filter the results by activity type (e.g., activity_entry or comment).\n *\n * @tags Comments\n * @name ActivityDetail\n * @summary Get all activity for a specific resource\n * @request GET:/{team_id}/activity\n */\n activityDetail: (\n teamId: string,\n query?: {\n /** Page ID is a numerical string that identifies a Page. */\n page_id?: string;\n /** Card ID is a numerical string that identifies a card. */\n card_id?: string;\n /** Optional filter on activity. Defaults to not filtering if not specified */\n filter?: \"activity_entry\" | \"comment\";\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetActivitiesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/activity`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieve detailed information about a specific activity item identified by its `activity_id`.\n *\n * @tags Comments\n * @name ActivityDetail2\n * @summary Get an activity\n * @request GET:/{team_id}/activity/{activity_id}\n * @originalName activityDetail\n * @duplicate\n */\n activityDetail2: (teamId: string, activityId: string, params: RequestParams = {}) =>\n this.http.request<\n GetActivityResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/activity/${activityId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description The only activity that can be modified is a comment. Updates can include changing the content, the status (e.g., resolved, open, or orphaned), or the context (such as highlighted text). Any fields omitted in the update request remain unmodified.\n *\n * @tags Comments\n * @name ActivityPartialUpdate\n * @summary Update an activity. Only comments can be edited\n * @request PATCH:/{team_id}/activity/{activity_id}\n */\n activityPartialUpdate: (\n teamId: string,\n activityId: string,\n body: UpdateActivityRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetActivityResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/activity/${activityId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Remove a specific activity from the workspace. This operation is limited to comments and cannot delete other activity types.\n *\n * @tags Comments\n * @name ActivityDelete\n * @summary Delete an activity. Only comments can be deleted\n * @request DELETE:/{team_id}/activity/{activity_id}\n */\n activityDelete: (teamId: string, activityId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/activity/${activityId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Fetches a list of comments associated with a specific team resource, e.g. card or page. Optional query parameters allow filtering by page_id, card_id, and one of it must be specified. The comments can further be filtered by the filter parameter, which supports the following values: resolved, open, orphaned.\n *\n * @tags Comments\n * @name GetComments\n * @summary Retrieve all comments for a team.\n * @request GET:/{team_id}/comments\n */\n getComments: (\n teamId: string,\n query?: {\n /** Page ID is a numerical string that identifies a Page. */\n page_id?: string;\n /** Card ID is a numerical string that identifies a card. */\n card_id?: string;\n /** Optional filter on comments. Defaults to not filtering if not specified */\n filter?: \"resolved\" | \"open\" | \"orphaned\";\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetCommentsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Adds a new comment to a specified team resource. The request body must include the content field, with optional fields for context, page_id, or card_id.\n *\n * @tags Comments\n * @name CreateComment\n * @summary Create a new comment\n * @request POST:/{team_id}/comments\n */\n createComment: (teamId: string, body: CreateCommentRequest, params: RequestParams = {}) =>\n this.http.request<\n CommentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches the details of a single comment identified by comment_id. Includes metadata like author, reactions, and timestamps.\n *\n * @tags Comments\n * @name GetComment\n * @summary Retrieve a specific comment by its ID.\n * @request GET:/{team_id}/comments/{comment_id}\n */\n getComment: (teamId: string, commentId: string, params: RequestParams = {}) =>\n this.http.request<\n CommentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Modifies the fields of an existing comment. Only the original author can modify comments. The request body should specify the fields to update, such as content, status, or context. Omitted fields will remain unchanged. The status field accepts the following values: resolved, open, orphaned.\n *\n * @tags Comments\n * @name UpdateComment\n * @summary Update an existing comment.\n * @request PATCH:/{team_id}/comments/{comment_id}\n */\n updateComment: (teamId: string, commentId: string, body: UpdateCommentRequest, params: RequestParams = {}) =>\n this.http.request<\n CommentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Permanently removes the comment identified by comment_id. Only the original author can delete their own comment.\n *\n * @tags Comments\n * @name DeleteComment\n * @summary Delete a specific comment.\n * @request DELETE:/{team_id}/comments/{comment_id}\n */\n deleteComment: (teamId: string, commentId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Changes the status of a comment identified by comment_id. The request body must include the status field, which can be one of the following values: resolved, open, orphaned.\n *\n * @tags Comments\n * @name UpdateCommentStatus\n * @summary Update the status of a comment.\n * @request PUT:/{team_id}/comments/{comment_id}/status\n */\n updateCommentStatus: (\n teamId: string,\n commentId: string,\n body: UpdateCommentStatusRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}/status`,\n method: \"PUT\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Adds a reaction to a specific comment (`comment_id`) within a workspace (`team_id`).\n *\n * @tags Comments\n * @name CreateCommentReaction\n * @summary React to a comment\n * @request PUT:/{team_id}/comments/{comment_id}/reactions/{reaction_id}\n */\n createCommentReaction: (\n teamId: string,\n commentId: string,\n reactionId: string,\n body: CreateCommentReactionRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n CreateCommentReactionResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}/reactions/${reactionId}`,\n method: \"PUT\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Removes a specific reaction (`reaction_id`) associated with a comment (`comment_id`) in a given workspace (`team_id`). Only the original author of the reaction can remove one.\n *\n * @tags Comments\n * @name DeleteCommentReaction\n * @summary Delete a reaction to a comment.\n * @request DELETE:/{team_id}/comments/{comment_id}/reactions/{reaction_id}\n */\n deleteCommentReaction: (teamId: string, commentId: string, reactionId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}/reactions/${reactionId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Retrieves a list of comments, also known as child comments or replies, associated to a parent comment identified by comment_id. The response includes nested metadata and pagination details.\n *\n * @tags Comments\n * @name GetChildComments\n * @summary Get all children of a comment\n * @request GET:/{team_id}/comments/{comment_id}/children\n */\n getChildComments: (teamId: string, commentId: string, params: RequestParams = {}) =>\n this.http.request<\n GetChildCommentsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}/children`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new child comment under the parent comment specified by comment_id. The request body must include the content field and can optionally include additional metadata such as schema. The child comment can also be referred to as a reply or a thread.\n *\n * @tags Comments\n * @name CreateChildComment\n * @summary Add a child comment or in other words: reply to an existing comment.\n * @request POST:/{team_id}/comments/{comment_id}/children\n */\n createChildComment: (\n teamId: string,\n commentId: string,\n body: CreateChildCommentRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n ChildCommentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}/children`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves the details of a specific child comment associated with a parent comment in a team. Required Parameters: - team_id (path): Unique identifier for the team. - comment_id (path): Unique identifier for the parent comment. - child_comment_id (path): Unique identifier for the child comment. The response includes details such as content, reactions, metadata (timestamps), and information about the user or system that created or updated the child comment.\n *\n * @tags Comments\n * @name GetChildComment\n * @summary Get child comment\n * @request GET:/{team_id}/comments/{comment_id}/children/{child_comment_id}\n */\n getChildComment: (teamId: string, commentId: string, childCommentId: string, params: RequestParams = {}) =>\n this.http.request<\n ChildCommentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}/children/${childCommentId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the content or metadata of a specific child comment within a team. Only the original author of the child comment can modify it. Required Parameters: - team_id (path): Unique identifier for the team. - comment_id (path): Unique identifier for the parent comment. - child_comment_id (path): Unique identifier for the child comment. - body (body): Object containing: - content (string): Updated text of the comment (nullable, max length: 16,384 characters). - schema (integer): Optional schema version for the update (nullable). Returns a 200 status code with the updated comment details or an error object in case of failure.\n *\n * @tags Comments\n * @name UpdateChildComment\n * @summary Update a child comment\n * @request PATCH:/{team_id}/comments/{comment_id}/children/{child_comment_id}\n */\n updateChildComment: (\n teamId: string,\n commentId: string,\n childCommentId: string,\n body: UpdateChildCommentRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n ChildCommentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}/children/${childCommentId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes a specific child comment (`child_comment_id`) associated with a parent comment (`comment_id`) in a workspace (`team_id`). Only the original author of the child comment can delete it.\n *\n * @tags Comments\n * @name DeleteChildComment\n * @summary Delete a child comment\n * @request DELETE:/{team_id}/comments/{comment_id}/children/{child_comment_id}\n */\n deleteChildComment: (teamId: string, commentId: string, childCommentId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/comments/${commentId}/children/${childCommentId}`,\n method: \"DELETE\",\n ...params,\n }),\n };\n files = {\n /**\n * @description Retrieves a list of files attached to a specific resource, such as a `card` or `page` within the workspace (`team_id`). Note that only one resource type can be specified, and specifying a resource type is mandatory. Users can apply filters such as \"attachment\" or \"inline\" to narrow down the results of files based on where they appear in the resource. Cards can have both attachments or inline files. Pages can only have inline files. The default filter returns only files marked as attachments.\n *\n * @tags Files\n * @name GetFiles\n * @summary Get all files\n * @request GET:/{team_id}/files\n */\n getFiles: (\n teamId: string,\n query?: {\n /** Page ID is a numerical string that identifies a Page. */\n page_id?: string;\n /** Card ID is a numerical string that identifies a card. */\n card_id?: string;\n /**\n * filter files by attachment type\n * @default \"attachments\"\n */\n filter?: \"inline\" | \"attachments\" | \"all\";\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetFilesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/files`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Uploads multiple files to the workspace (`team_id`) and associates them with a specific resource. Users can associate files with a `card`, `page`, `user`, or `team`. If no resource is specified, the files are uploaded to the workspace.\n *\n * @tags Files\n * @name UploadFiles\n * @summary Upload files\n * @request POST:/{team_id}/files\n */\n uploadFiles: (\n teamId: string,\n data: {\n /**\n * files to upload\n * @format binary\n */\n files: File;\n /** card to associate files to */\n card_id?: string;\n /** page to associate files to */\n page_id?: string;\n /** user to associate files to */\n user_id?: string;\n /** team to associate files to */\n team_id?: string;\n /** associate this file with a resource, listing it as an attachment. Only relevant when uploading files to cards. Defaults to true */\n attachment?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n UploadFilesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/files`,\n method: \"POST\",\n body: data,\n type: ContentType.FormData,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches the metadata and details of a specific file (`file_id`) in the workspace (`team_id`). This endpoint allows users to view file attributes, such as its name, associated resources (card or page), and attachment status.\n *\n * @tags Files\n * @name GetFile\n * @summary Get a file\n * @request GET:/{team_id}/files/{file_id}\n */\n getFile: (teamId: string, fileId: string, params: RequestParams = {}) =>\n this.http.request<\n GetFileResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/files/${fileId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the metadata or associations of a specific file. Users can modify the file's name or change its linked resources, such as associating it with a specific card or page. If no fields are specified, the file's current properties remain unchanged.\n *\n * @tags Files\n * @name UpdateFile\n * @summary Update a file\n * @request PATCH:/{team_id}/files/{file_id}\n */\n updateFile: (teamId: string, fileId: string, body: UpdateFileRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateFileResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/files/${fileId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes the specified file from the workspace (`team_id`). This operation is irreversible and removes the file from all associated resources.\n *\n * @tags Files\n * @name DeleteFile\n * @summary Delete a file\n * @request DELETE:/{team_id}/files/{file_id}\n */\n deleteFile: (teamId: string, fileId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/files/${fileId}`,\n method: \"DELETE\",\n ...params,\n }),\n };\n boards = {\n /**\n * @description This endpoint retrieves a list of tags associated with a workspace (team) and optionally filters them by a specific project if the `project_id` query parameter is provided. It also supports fetching all tags in the workspace with the `all` parameter.\n *\n * @tags Boards, Tags\n * @name GetTags\n * @summary Retrieve tags for a workspace or project (optionally).\n * @request GET:/{team_id}/tags\n */\n getTags: (\n teamId: string,\n query?: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id?: string;\n /** Return all tags */\n all?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetTagsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/tags`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint creates a new tag for a Workspace or a specific Project (externally referenced as Space). The request body must include the name and color of the tag. The `project_id` can be optionally included to scope the tag within a specific project/space.\n *\n * @tags Boards, Tags\n * @name CreateTag\n * @summary Create a new tag\n * @request POST:/{team_id}/tags\n */\n createTag: (teamId: string, body: CreateTagRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateTagResponse,\n | CreateTagErrorResponse\n | {\n error?: Error;\n }\n >({\n path: `/${teamId}/tags`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint allows users to merge multiple project-level tags into a single workspace-level tag. The user must provide the new tag's name and colour properties in the request body. Upon successful merging, a new tag is created with the provided properties, and the response includes its details such as `id`, `team_id`, `total_cards`, and more.\n *\n * @tags Boards, Tags\n * @name MergeTags\n * @summary Merge tags\n * @request POST:/{team_id}/tags/merge\n */\n mergeTags: (teamId: string, body: MergeTagRequest, params: RequestParams = {}) =>\n this.http.request<\n MergeTagResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/tags/merge`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint updates the properties of a specific tag, identified by `tag_id`. The request body must include at least one of the properties (name or color). If omitted, other fields will remain unchanged.\n *\n * @tags Boards, Tags\n * @name UpdateTag\n * @summary Update an existing tag.\n * @request PATCH:/{team_id}/tags/{tag_id}\n */\n updateTag: (teamId: string, tagId: string, body: UpdateTagRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateTagResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/tags/${tagId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint deletes a tag identified by the `tag_id`. Once deleted, the tag and its associations are removed. The operation requires specifying both `team_id` and `tag_id` as part of the request path.\n *\n * @tags Boards, Tags\n * @name DeleteTag\n * @summary Delete a tag\n * @request DELETE:/{team_id}/tags/{tag_id}\n */\n deleteTag: (teamId: string, tagId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/tags/${tagId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Fetches a list of all boards within a specified workspace (`team_id`). Query parameters allow filtering based on bookmarked status or archived boards. Use the `project_id` parameter to specify the associated space.\n *\n * @tags Boards\n * @name GetBoards\n * @summary Get all boards\n * @request GET:/{team_id}/boards\n */\n getBoards: (\n teamId: string,\n query: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id: string;\n /** Flag whether to fetch only bookmarked boards */\n bookmarked?: boolean;\n /** Flag whether to fetch archived boards only */\n archived?: true | false;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetBoardsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Allows the creation of a new board within a workspace (`team_id`). The request body should contain the board's title, layout, lists, members, and other optional metadata. Specify the project ID to associate the board with a space.\n *\n * @tags Boards\n * @name CreateBoard\n * @summary Create a new board\n * @request POST:/{team_id}/boards\n */\n createBoard: (teamId: string, body: CreateBoardRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateBoardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Returns detailed information about a specific board identified by its unique ID within a workspace (`team_id`). This includes metadata and settings configured for the board.\n *\n * @tags Boards\n * @name GetBoard\n * @summary Get a board\n * @request GET:/{team_id}/boards/{board_id}\n */\n getBoard: (teamId: string, boardId: string, params: RequestParams = {}) =>\n this.http.request<\n GetBoardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the specified fields of a board. Fields omitted in the request will remain unchanged.\n *\n * @tags Boards\n * @name UpdateBoard\n * @summary Update a board\n * @request PATCH:/{team_id}/boards/{board_id}\n */\n updateBoard: (teamId: string, boardId: string, body: UpdateBoardRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateBoardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * No description\n *\n * @tags Boards\n * @name DeleteBoard\n * @summary Delete a board\n * @request DELETE:/{team_id}/boards/{board_id}\n */\n deleteBoard: (teamId: string, boardId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Duplicates an existing board into a specified space (project). The request body allows customization of the title and associated project ID.\n *\n * @tags Boards\n * @name CopyBoard\n * @summary Create a new board copy\n * @request POST:/{team_id}/boards/{board_id}/copy\n */\n copyBoard: (teamId: string, boardId: string, body: CopyBoardRequest, params: RequestParams = {}) =>\n this.http.request<\n CopyBoardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/copy`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Adds a user to the board with the specified role. The user will have access to the board's content and activities.\n *\n * @tags Boards\n * @name AddBoardMember\n * @summary Add a member to a board\n * @request PUT:/{team_id}/boards/{board_id}/members/{user_id}\n */\n addBoardMember: (teamId: string, boardId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/members/${userId}`,\n method: \"PUT\",\n ...params,\n }),\n\n /**\n * @description Removes a user from the board.\n *\n * @tags Boards\n * @name DeleteBoardMember\n * @summary Remove a member from a board\n * @request DELETE:/{team_id}/boards/{board_id}/members/{user_id}\n */\n deleteBoardMember: (teamId: string, boardId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/members/${userId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Adds a user to the list of watchers for a board. Watchers receive notifications for all activities on the board.\n *\n * @tags Boards\n * @name AddBoardWatcher\n * @summary Add a watcher to a board\n * @request POST:/{team_id}/boards/{board_id}/watchers\n */\n addBoardWatcher: (teamId: string, boardId: string, body: AddWatcherRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/watchers`,\n method: \"POST\",\n body: body,\n ...params,\n }),\n\n /**\n * @description Removes a user from the list of watchers for a board. The user will no longer receive notifications for activities on the board.\n *\n * @tags Boards\n * @name DeleteBoardWatcher\n * @summary Delete a watcher from a board\n * @request DELETE:/{team_id}/boards/{board_id}/watchers/{user_id}\n */\n deleteBoardWatcher: (teamId: string, boardId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/watchers/${userId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Modifies the email address settings for a board. The request can regenerate the email or activate/deactivate it.\n *\n * @tags Boards\n * @name UpdateBoardEmail\n * @summary Update board email\n * @request PATCH:/{team_id}/boards/{board_id}/email\n */\n updateBoardEmail: (teamId: string, boardId: string, body: UpdateBoardEmailRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateBoardEmailResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/email`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Sets up a version control system (VCS) automation workflow for a specific branch on the board. The branch name must be provided in the request body.\n *\n * @tags Boards\n * @name CreateNewVcsBranchAutomation\n * @summary Create a new branch specific VCS automation\n * @request POST:/{team_id}/boards/{board_id}/vcs\n */\n createNewVcsBranchAutomation: (\n teamId: string,\n boardId: string,\n body: CreateBranchAutomationRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/vcs`,\n method: \"POST\",\n body: body,\n ...params,\n }),\n\n /**\n * @description Renames the branch in the VCS automation workflow associated with a board. Requires the new branch name in the request body.\n *\n * @tags Boards\n * @name UpdateBranchNameVcsBranchAutomation\n * @summary Update the branch name for a branch specific VCS automation\n * @request PATCH:/{team_id}/boards/{board_id}/vcs/{branch}\n */\n updateBranchNameVcsBranchAutomation: (\n teamId: string,\n boardId: string,\n branch: string,\n body: UpdateVCSBranchNameRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/vcs/${branch}`,\n method: \"PATCH\",\n body: body,\n ...params,\n }),\n\n /**\n * @description Deletes the version control system (VCS) automation workflow associated with the specified branch for the board.\n *\n * @tags Boards\n * @name DeleteBoardVcsBranchAutomation\n * @summary Delete a branch specific VCS automation\n * @request DELETE:/{team_id}/boards/{board_id}/vcs/{branch}\n */\n deleteBoardVcsBranchAutomation: (teamId: string, boardId: string, branch: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/vcs/${branch}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Creates a new webhook notification for the board. Specify the destination type (e.g., `slack_channel_webhook`) and integration ID in the request body.\n *\n * @tags Boards\n * @name CreateWebhookNotification\n * @summary Create a new webhook notification for a Board\n * @request POST:/{team_id}/boards/{board_id}/webhooks\n */\n createWebhookNotification: (\n teamId: string,\n boardId: string,\n body: CreateWebhookNotificationRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n CreateWebhookNotificationResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/webhooks`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the webhook notification settings for the board. Configure notifications for each supported events. Omitted fields are left unmodified.\n *\n * @tags Boards\n * @name UpdateWebhookNotificationBoard\n * @summary Update a webhook notification for a Board\n * @request PATCH:/{team_id}/boards/{board_id}/webhooks/{webhook_type}\n */\n updateWebhookNotificationBoard: (\n teamId: string,\n boardId: string,\n webhookType: string,\n body: UpdateBoardWebhookNotificationRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdateBoardWebhookNotificationResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/webhooks/${webhookType}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes a webhook notification for the board identified by its type (e.g., slack_channel_webhook).\n *\n * @tags Boards\n * @name DeleteWebhookNotification\n * @summary Delete a webhook notification\n * @request DELETE:/{team_id}/boards/{board_id}/webhooks/{webhook_type}\n */\n deleteWebhookNotification: (teamId: string, boardId: string, webhookType: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/boards/${boardId}/webhooks/${webhookType}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Fetches the sprint settings for the specified project (externally referenced as Space, `project_id`) within a workspace (`team_id`). Includes configurations such as sprint length, layout, statuses, cooldown period, start day of the week, and VCS mappings for automation.\n *\n * @tags Boards, Sprints\n * @name GetSprintSettings\n * @summary Get sprint settings for project\n * @request GET:/{team_id}/sprints/settings\n */\n getSprintSettings: (\n teamId: string,\n query: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id: string;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetSprintSettingsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints/settings`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the sprint settings for the specified project (externally referenced as Space, `project_id`) within a workspace (`team_id`).\n *\n * @tags Boards, Sprints\n * @name SetSprintSettings\n * @summary Set sprint settings\n * @request PUT:/{team_id}/sprints/settings\n */\n setSprintSettings: (\n teamId: string,\n query: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id: string;\n },\n body: SetSprintSettingsRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n SetSprintSettingsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints/settings`,\n method: \"PUT\",\n query: query,\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches all sprints for the specified project (externally referenced as Space, `project_id`) within a workspace (`team_id`). status. The response can include active or archived sprints based on the archived query parameter.\n *\n * @tags Boards, Sprints\n * @name GetSprints\n * @summary Get all sprints for project\n * @request GET:/{team_id}/sprints\n */\n getSprints: (\n teamId: string,\n query: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id: string;\n /** Flag whether to fetch only archived sprints */\n archived?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetSprintsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new sprint for the specified project (`project_id`) in a workspace (`team_id`). A sprint can include a title, content, and must reference the `project_id` (externally referenced as Space).\n *\n * @tags Boards, Sprints\n * @name CreateSprint\n * @summary Create a new sprint\n * @request POST:/{team_id}/sprints\n */\n createSprint: (teamId: string, body: CreateSprintRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateSprintResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches detailed information for a specific sprint identified by `sprint_id` within the workspace (`team_id`). This includes sprint metadata such as its title, content, start and end dates, and current state.\n *\n * @tags Boards, Sprints\n * @name GetSprint\n * @summary Get a sprint\n * @request GET:/{team_id}/sprints/{sprint_id}\n */\n getSprint: (teamId: string, sprintId: string, params: RequestParams = {}) =>\n this.http.request<\n GetSprintResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints/${sprintId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the fields of a specific sprint (`sprint_id`) within the workspace (`team_id`). Only the fields provided in the request body will be modified; omitted fields will remain unchanged.\n *\n * @tags Boards, Sprints\n * @name UpdateSprint\n * @summary Update a sprint\n * @request PATCH:/{team_id}/sprints/{sprint_id}\n */\n updateSprint: (teamId: string, sprintId: string, body: UpdateSprintRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateSprintResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints/${sprintId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes the specified sprint (`sprint_id`) within the workspace (`team_id`). This operation is irreversible and removes the sprint and its associated data.\n *\n * @tags Boards, Sprints\n * @name DeleteSprint\n * @summary Delete a sprint\n * @request DELETE:/{team_id}/sprints/{sprint_id}\n */\n deleteSprint: (teamId: string, sprintId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints/${sprintId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Creates a branch-specific version control system (VCS) automation for sprint workflows within the specified project (`project_id`) and workspace (`team_id`). Requires the branch name, which must be 1-250 characters long and follow the pattern ^[a-zA-Z0-9._\\/-]+$.\n *\n * @tags Boards, Sprints\n * @name CreateNewSprintVcsBranchAutomation\n * @summary Create a new branch specific VCS automation for sprints\n * @request POST:/{team_id}/sprints/vcs\n */\n createNewSprintVcsBranchAutomation: (\n teamId: string,\n query: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id: string;\n },\n body: CreateBranchAutomationRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints/vcs`,\n method: \"POST\",\n query: query,\n body: body,\n ...params,\n }),\n\n /**\n * @description Updates a branch-specific version control system (VCS) automation for sprint workflows within the specified project (`project_id`) and workspace (`team_id`). Requires the `branch` name, which must be 1-250 characters long and follow the pattern ^[a-zA-Z0-9._\\/-]+$.\n *\n * @tags Boards, Sprints\n * @name UpdateBranchNameSprintVcsBranchAutomation\n * @summary Update the branch name for a branch specific VCS automation for sprints\n * @request PATCH:/{team_id}/sprints/vcs/{branch}\n */\n updateBranchNameSprintVcsBranchAutomation: (\n teamId: string,\n branch: string,\n query: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id: string;\n },\n body: UpdateVCSBranchNameRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints/vcs/${branch}`,\n method: \"PATCH\",\n query: query,\n body: body,\n ...params,\n }),\n\n /**\n * @description Deletes a branch-specific VCS automation for sprints in the specified project (`project_id`) and workspace (`team_id`). The operation is irreversible and removes all associated configurations for the `branch`.\n *\n * @tags Boards\n * @name DeleteSprintVcsBranchAutomation\n * @summary Delete a branch specific VCS automation for sprints\n * @request DELETE:/{team_id}/sprints/vcs/{branch}\n */\n deleteSprintVcsBranchAutomation: (\n teamId: string,\n branch: string,\n query: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id: string;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/sprints/vcs/${branch}`,\n method: \"DELETE\",\n query: query,\n ...params,\n }),\n\n /**\n * @description Fetches an array of `lists` (externally referenced as statuses) for the specified workspace (`team_id`). The endpoint supports filtering by the `archived` query parameter to return only archived lists.\n *\n * @tags Boards, Lists\n * @name GetLists\n * @summary Get lists\n * @request GET:/{team_id}/lists\n */\n getLists: (\n teamId: string,\n query: {\n /** whether to return archived lists only */\n archived: true;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetListsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/lists`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new list within a workspace (`team_id`). The request body must include the `board_id` where the list should belong to.\n *\n * @tags Boards, Lists\n * @name CreateList\n * @summary Create a new list\n * @request POST:/{team_id}/lists\n */\n createList: (teamId: string, body: CreateListRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateListResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/lists`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetches detailed information about a list identified by `list_id` within a workspace specified by `team_id`. This includes list metadata, cards within the list, related users, and other associated data.\n *\n * @tags Boards, Lists\n * @name GetList\n * @summary Get a list\n * @request GET:/{team_id}/lists/{list_id}\n */\n getList: (teamId: string, listId: string, params: RequestParams = {}) =>\n this.http.request<\n GetListResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/lists/${listId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the specified list (`list_id`) in a workspace (`team_id`). The request body contains the fields to modify, while omitted fields remain unchanged.\n *\n * @tags Boards, Lists\n * @name UpdateList\n * @summary Update a list\n * @request PATCH:/{team_id}/lists/{list_id}\n */\n updateList: (teamId: string, listId: string, body: UpdateListRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateListResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/lists/${listId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes the specified list (`list_id`) from a workspace (`team_id`). This operation is permanent and cannot be undone.\n *\n * @tags Boards, Lists\n * @name DeleteList\n * @summary Delete a list\n * @request DELETE:/{team_id}/lists/{list_id}\n */\n deleteList: (teamId: string, listId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/lists/${listId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Adds a new watcher to the specified list (`list_id`) within a workspace (`team_id`). The body parameter includes the `user_id` of the user to be added as a watcher (someone who will receive notifications based on the activities on the list).\n *\n * @tags Boards, Lists\n * @name AddListWatcher\n * @summary Add a watcher to a list\n * @request POST:/{team_id}/lists/{list_id}/watchers\n */\n addListWatcher: (teamId: string, listId: string, body: AddWatcherRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/lists/${listId}/watchers`,\n method: \"POST\",\n body: body,\n ...params,\n }),\n\n /**\n * @description Removes an existing watcher from the specified list (`list_id`) within a workspace (`team_id`).\n *\n * @tags Boards, Lists\n * @name DeleteListWatcher\n * @summary Delete a watcher from a list\n * @request DELETE:/{team_id}/lists/{list_id}/watchers/{user_id}\n */\n deleteListWatcher: (teamId: string, listId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/lists/${listId}/watchers/${userId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Updates the settings for a specific webhook notification type (`webhook_type`) for a list (`list_id`) in a workspace (`team_id`). Currently, the only supported webhook type is `slack_channel_webhook`. The request body must include the `board_id` (string) to indicate the board the list belongs to, and the webhook object, which defines the webhook configuration. The `card_created` (boolean) defines whether to send notifications when a card is added to the specified list.\n *\n * @tags Boards, Lists\n * @name UpdateWebhookNotificationList\n * @summary Toggle a webhook notification for a List in a Board\n * @request PATCH:/{team_id}/lists/{list_id}/webhooks/{webhook_type}\n */\n updateWebhookNotificationList: (\n teamId: string,\n listId: string,\n webhookType: string,\n body: ToggleListWebhookNotificationRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n ToggleListWebhookNotificationResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/lists/${listId}/webhooks/${webhookType}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint retrieves cards within a team workspace. To return archived cards only, the `archived` query parameter must be set to `true`, otherwise it must be omitted.\n *\n * @tags Boards, Cards\n * @name GetCards\n * @summary Get cards\n * @request GET:/{team_id}/cards\n */\n getCards: (\n teamId: string,\n query: {\n /** Whether to return only archived cards */\n archived: true;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetCardsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint allows you to create a new card in a specified team workspace by providing a set of required and optional parameters. Key required fields include: - `title`: The name of the card - `list_id`: The ID of the list where the card will be placed - `board_id` or `sprint_id`: One of these fields must be provided to specify where the card belongs to The card's content has a character limit of 102400, and timestamps like `due_date` and `start_date` are specified as Unix timestamps in seconds. Enum fields include status (committed, started, completed, cancelled) and icon types (image, emoji, icon).\n *\n * @tags Boards, Cards\n * @name CreateCard\n * @summary Create a new card\n * @request POST:/{team_id}/cards\n */\n createCard: (teamId: string, body: CreateCardRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateCardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves a list of available card templates within the specified workspace (`team_id`). The templates include metadata such as title, content, associated tags, members, checklists, and child card configurations. The optional query parameter `project_id` allows filtering templates by their associated project (also known as space). The response includes pagination details (cursor and count) for navigating large datasets.\n *\n * @tags Boards, Cards\n * @name GetCardTemplates\n * @summary Get card templates\n * @request GET:/{team_id}/cards/templates\n */\n getCardTemplates: (\n teamId: string,\n query?: {\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id?: string;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetCardTemplatesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/templates`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new card template in the specified workspace (`team_id`). The request body includes mandatory fields like `title` and `card_title` and optional configurations for `content`, `priority`, `tags`, `checklists`, and child cards. Templates can be associated with specific projects (`project_ids`) for contextual availability. The response returns the created template's details, including its `id` and associated metadata.\n *\n * @tags Boards, Cards\n * @name CreateCardTemplate\n * @summary Create a new card template\n * @request POST:/{team_id}/cards/templates\n */\n createCardTemplate: (teamId: string, body: CreateCardTemplateRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateCardTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/templates`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves details of a specific card template identified by `template_id`. The response includes template metadata like title, card_content, associated tags, members, checklists, child card configurations, and the projects (project_ids) where the template is available. Useful for viewing or editing specific templates within the team.\n *\n * @tags Boards, Cards\n * @name GetCardTemplate\n * @summary Get a card template\n * @request GET:/{team_id}/cards/templates/{template_id}\n */\n getCardTemplate: (teamId: string, templateId: string, params: RequestParams = {}) =>\n this.http.request<\n GetCardTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/templates/${templateId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the specified card template (`template_id`) within a workspace. Only fields provided in the request body are updated, leaving others unchanged. Editable fields include `title`, `content`, `priority`, `tags`, `members`, `checklists`, and associated `project_ids`. The response returns the updated template's details.\n *\n * @tags Boards, Cards\n * @name UpdateCardTemplate\n * @summary Update a card template\n * @request PATCH:/{team_id}/cards/templates/{template_id}\n */\n updateCardTemplate: (\n teamId: string,\n templateId: string,\n body: UpdateCardTemplateRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdateCardTemplateResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/templates/${templateId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes the specified card template (`template_id`) within the workspace (`team_id`). This action is irreversible and removes the template and all its associated metadata. A 204 response indicates successful deletion. Errors, such as insufficient permissions, return a detailed error response.\n *\n * @tags Boards\n * @name DeleteCardTemplate\n * @summary Delete a card template\n * @request DELETE:/{team_id}/cards/templates/{template_id}\n */\n deleteCardTemplate: (teamId: string, templateId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/templates/${templateId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Retrieves detailed information about a specific card, identified by its `card_id` within a workspace (`team_id`). The response includes metadata such as the card's title, content, status, owner, priority, associated tags, and links to related items. Child cards, linked cards, and any collaboration or external references are also included.\n *\n * @tags Boards, Cards\n * @name GetCard\n * @summary Get card details.\n * @request GET:/{team_id}/cards/{card_id}\n */\n getCard: (teamId: string, cardId: string, params: RequestParams = {}) =>\n this.http.request<\n GetCardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Update a card's attributes or archive/unarchive it. **Archiving:** - If `archived=true`, the card is archived and other changes are ignored. - If `archived=false`, an archived card is unarchived and other changes are ignored. **Attribute Updates:** - Update fields like `title`, `priority`, `due_date`, `owner_id`, `estimate` without affecting unspecified fields. Fields not mentioned remain unchanged.\n *\n * @tags Boards, Cards\n * @name UpdateCard\n * @summary Update card attributes or archive/unarchive.\n * @request PATCH:/{team_id}/cards/{card_id}\n */\n updateCard: (teamId: string, cardId: string, body: UpdateCardRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateCardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes a specific card, identified by its `card_id`, within the specified workspace (`team_id`). This action is irreversible and removes all associated data, including linked cards, child cards, tags, and external references. Use this operation cautiously, as it cannot be undone. A 204 response indicates successful deletion, while errors, such as insufficient permissions, return a detailed error response.\n *\n * @tags Boards, Cards\n * @name DeleteCard\n * @summary Delete a card\n * @request DELETE:/{team_id}/cards/{card_id}\n */\n deleteCard: (teamId: string, cardId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Moves a card (`card_id`) to a list in a new sprint, new board or new position within the same list. The request body specifies the target (sprint or board) where the card should be moved. A 200 response contains the details of the moved card.\n *\n * @tags Boards, Cards\n * @name MoveCard\n * @summary Move a card to a new sprint, board, or position within the same list\n * @request POST:/{team_id}/cards/{card_id}/move\n */\n moveCard: (teamId: string, cardId: string, body: MoveCardRequest, params: RequestParams = {}) =>\n this.http.request<\n MoveCardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/move`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a duplicate of a specified card (`card_id`) within the same or another list/board. The copied card retains its content, child cards, and other attributes. The request body specifies the new card's details, such as the target list_id, board_id, and project_id. A 200 response contains the details of the copied card.\n *\n * @tags Boards, Cards\n * @name CreateCardCopy\n * @summary Create a new card copy\n * @request POST:/{team_id}/cards/{card_id}/copy\n */\n createCardCopy: (teamId: string, cardId: string, body: CreateCardCopyRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateCardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/copy`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Converts a card (`card_id`) to an epic (externally referenced as a roadmap item or project) within the specified workspace (`team_id`). The request body includes the new epic's title, content, and other details. The operation is useful for promoting a card to a higher-level entity for better organization. A 200 response indicates the card was successfully converted to an epic.\n *\n * @tags Boards, Cards, Epics\n * @name ConvertCardToEpic\n * @summary Converts card to epic\n * @request POST:/{team_id}/cards/{card_id}/epic\n */\n convertCardToEpic: (teamId: string, cardId: string, params: RequestParams = {}) =>\n this.http.request<\n ConvertCardToEpicResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/epic`,\n method: \"POST\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Adds a watcher to the specified card (`card_id`) within a workspace (`team_id`). Watchers receive updates or notifications about the card's activities. The request body includes the `user_id` of the watcher. A 204 response indicates the watcher was successfully added.\n *\n * @tags Boards, Cards\n * @name AddCardWatcher\n * @summary Add a watcher to a card\n * @request POST:/{team_id}/cards/{card_id}/watchers\n */\n addCardWatcher: (teamId: string, cardId: string, body: AddWatcherRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/watchers`,\n method: \"POST\",\n body: body,\n ...params,\n }),\n\n /**\n * @description Removes a watcher (`user_id`) from the specified card (`card_id`) within a workspace (`team_id`). This operation is useful for managing notification preferences. A 204 response indicates the watcher was successfully removed.\n *\n * @tags Boards\n * @name DeleteCardWatcher\n * @summary Delete a watcher from a card\n * @request DELETE:/{team_id}/cards/{card_id}/watchers/{user_id}\n */\n deleteCardWatcher: (teamId: string, cardId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/watchers/${userId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Assigns a new member to the specified card (`card_id`) within a workspace (`team_id`). The request body includes the `user_id` of the member. This operation is essential for collaborative workflows where multiple users contribute to a card. A 204 response indicates the member was successfully added.\n *\n * @tags Boards, Cards\n * @name AddCardMember\n * @summary Add a member to a card\n * @request POST:/{team_id}/cards/{card_id}/members\n */\n addCardMember: (teamId: string, cardId: string, body: AddMemberRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/members`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Removes a specific member (`user_id`) from the specified card (`card_id`) within a workspace (`team_id`). This operation is used to un-assign a user from a card by updating the member list for a card. A 204 response indicates the member was successfully removed.\n *\n * @tags Boards, Cards\n * @name DeleteCardMember\n * @summary Remove a member from a card\n * @request DELETE:/{team_id}/cards/{card_id}/members/{user_id}\n */\n deleteCardMember: (teamId: string, cardId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/members/${userId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Creates a new checklist for a specific card within a workspace. The checklist requires a `title` and `content`, provided in the request body. The `team_id` represents the workspace identifier, and `card_id` specifies the target card. The checklist will include fields such as the creation timestamp, the user ID of the creator, and optionally, a list of checklist items. A successful response returns the created checklist object, while errors return detailed messages, including an HTTP status code.\n *\n * @tags Boards, Cards, Checklists\n * @name CreateChecklist\n * @summary Create a new checklist\n * @request POST:/{team_id}/cards/{card_id}/checklists\n */\n createChecklist: (teamId: string, cardId: string, body: CreateChecklistRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateChecklistResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/checklists`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves the details of a specific checklist identified by `checklist_id`. The `team_id` represents the workspace, and `card_id` specifies the card containing the checklist. The response includes metadata like the title, associated user ID, card ID, and a list of checklist items. Each item provides timestamps and status information. If the checklist does not exist or the user lacks permissions, an appropriate error is returned.\n *\n * @tags Boards, Cards, Checklists\n * @name GetChecklist\n * @summary Get a checklist\n * @request GET:/{team_id}/cards/{card_id}/checklists/{checklist_id}\n */\n getChecklist: (teamId: string, cardId: string, checklistId: string, params: RequestParams = {}) =>\n this.http.request<\n GetChecklistResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/checklists/${checklistId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates an existing checklist identified by `checklist_id`. The fields to update, such as title, content, or position, should be provided in the request body. Unmodified fields remain unchanged. The response includes the updated checklist object with metadata, such as timestamps for creation and updates. Errors may include invalid input or permission issues.\n *\n * @tags Boards, Cards, Checklists\n * @name UpdateChecklist\n * @summary Update a checklist\n * @request PATCH:/{team_id}/cards/{card_id}/checklists/{checklist_id}\n */\n updateChecklist: (\n teamId: string,\n cardId: string,\n checklistId: string,\n body: UpdateChecklistRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdateChecklistResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/checklists/${checklistId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes a specified checklist identified by `checklist_id`. The `team_id` and `card_id` parameters are used to locate the checklist. On success, the server returns a 204 No Content status. Errors, such as unauthorized access or invalid IDs, result in a detailed error message in the response.\n *\n * @tags Boards, Cards, Checklists\n * @name DeleteChecklist\n * @summary Delete a checklist\n * @request DELETE:/{team_id}/cards/{card_id}/checklists/{checklist_id}\n */\n deleteChecklist: (teamId: string, cardId: string, checklistId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/checklists/${checklistId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Fetches all items for a specified checklist, using `checklist_id` to identify the target checklist. The response includes an array of checklist items, each containing details like title, content, checked status, associated user_id, and timestamps for creation and updates. Errors may occur if the checklist is not found or access is restricted.\n *\n * @tags Boards, Cards, Checklists\n * @name GetChecklistItems\n * @summary Get all checklist items\n * @request GET:/{team_id}/cards/{card_id}/checklists/{checklist_id}/items\n */\n getChecklistItems: (teamId: string, cardId: string, checklistId: string, params: RequestParams = {}) =>\n this.http.request<\n GetChecklistItemsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/checklists/${checklistId}/items`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Creates a new checklist item within a specified checklist (`checklist_id`) for a card (`card_id`). The request body must include the item's `title`, `content`, and optionally the `checked` status. The response includes the created checklist item's details, such as timestamps and associated user ID. Errors may occur if the checklist item is not created or the user lacks permissions.\n *\n * @tags Boards, Cards, Checklists\n * @name CreateChecklistItem\n * @summary Create a new checklist item\n * @request POST:/{team_id}/cards/{card_id}/checklists/{checklist_id}/items\n */\n createChecklistItem: (\n teamId: string,\n cardId: string,\n checklistId: string,\n body: CreateChecklistItemRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n CreateChecklistResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/checklists/${checklistId}/items`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates an existing checklist item identified by `item_id`. The fields to update, such as title, content, or checked status, should be provided in the request body. Unmodified fields remain unchanged. The response includes the updated checklist item object with metadata. Errors may arise from invalid input or permission issues.\n *\n * @tags Boards, Cards, Checklists\n * @name UpdateChecklistItem\n * @summary Update a checklist item\n * @request PATCH:/{team_id}/cards/{card_id}/checklists/{checklist_id}/items/{item_id}\n */\n updateChecklistItem: (\n teamId: string,\n cardId: string,\n checklistId: string,\n itemId: string,\n body: ChecklistItem,\n params: RequestParams = {},\n ) =>\n this.http.request<\n {\n checklist_item?: ChecklistItem;\n },\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/checklists/${checklistId}/items/${itemId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes a specified checklist item identified by `item_id`. The `team_id`, `card_id`, and `checklist_id` parameters are used to locate the item. On success, the server returns a 204 No Content status. Errors, such as unauthorized access or invalid IDs, result in a detailed error message in the response.\n *\n * @tags Boards, Cards, Checklists\n * @name DeleteChecklistItem\n * @summary Delete a checklist item\n * @request DELETE:/{team_id}/cards/{card_id}/checklists/{checklist_id}/items/{item_id}\n */\n deleteChecklistItem: (\n teamId: string,\n cardId: string,\n checklistId: string,\n itemId: string,\n params: RequestParams = {},\n ) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/checklists/${checklistId}/items/${itemId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Creates a parent-child relationship between an existing card and a child card. The `card_id` represents the parent card, and the `child_card_id` is specified in the request body. The child card can belong to any project or board within the same workspace (`team_id`). The response includes the linked child card's details such as title, status, list association, and project or board information. Supported statuses for child cards include committed, started, completed, and cancelled.\n *\n * @tags Boards, Cards\n * @name AddChildCard\n * @summary Add a child card\n * @request POST:/{team_id}/cards/{card_id}/child_cards\n */\n addChildCard: (teamId: string, cardId: string, body: AddChildCardRequest, params: RequestParams = {}) =>\n this.http.request<\n AddChildCardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/child_cards`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Removes the relationship between a parent card and a specified child card. The `card_id` represents the parent card, and the `child_card_id` identifies the nested card to be unlinked. Upon success, this operation returns a 204 status code. Errors ,such as permission issues or invalid card IDs, return a detailed error response.\n *\n * @tags Boards, Cards\n * @name RemoveChildCard\n * @summary Remove a child card\n * @request DELETE:/{team_id}/cards/{card_id}/child_cards/{child_card_id}\n */\n removeChildCard: (teamId: string, cardId: string, childCardId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/child_cards/${childCardId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Creates a relationship between a specified card (`card_id`) and another card using a defined link type (`blocks`, `blocked_by`, `related`, or `duplicates`). This relationship helps visualize dependencies or connections between cards. A 200 response includes details of the linked card.\n *\n * @tags Boards, Cards\n * @name AddLinkedCard\n * @summary Link a card with another\n * @request POST:/{team_id}/cards/{card_id}/linked_cards\n */\n addLinkedCard: (teamId: string, cardId: string, body: AddLinkedCardRequest, params: RequestParams = {}) =>\n this.http.request<\n AddLinkedCardResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/linked_cards`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes an existing link between the specified card (`card_id`) and a linked card (`linked_card_id`). This operation is used to remove relationships between cards. A 204 response indicates the link was successfully removed.\n *\n * @tags Boards, Cards\n * @name RemoveLinkedCard\n * @summary Remove linked card\n * @request DELETE:/{team_id}/cards/{card_id}/linked_cards/{linked_card_id}\n */\n removeLinkedCard: (teamId: string, cardId: string, linkedCardId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/linked_cards/${linkedCardId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Attaches one or more tags to a specified card (`card_id`) within a workspace (`team_id`). Tags are used to categorize or organize cards for easier filtering and tracking. The request body can include a single tag (id) or multiple tags (ids), but one of `id` or `ids` must be specified. A 204 response indicates that the tag(s) were successfully added.\n *\n * @tags Boards, Cards, Tags\n * @name AddCardTags\n * @summary Add tags to card\n * @request POST:/{team_id}/cards/{card_id}/tags\n */\n addCardTags: (teamId: string, cardId: string, body: AddTagRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/tags`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Removes a specific tag (`tag_id`) from the specified card (`card_id`) within a workspace (`team_id`). A 204 response indicates the tag was successfully removed.\n *\n * @tags Boards, Cards, Tags\n * @name RemoveCardTag\n * @summary Remove a tag from a card\n * @request DELETE:/{team_id}/cards/{card_id}/tags/{tag_id}\n */\n removeCardTag: (teamId: string, cardId: string, tagId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/tags/${tagId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Updates the hints or suggestions for a specific card (`card_id`) within a workspace (`team_id`). The request body includes a list of actions, such as ignoring specific related card suggestions or tags using `related_card_id` or `tag_slug`.\n *\n * @tags Boards, Cards\n * @name UpdateTagHints\n * @summary Update card hints\n * @request POST:/{team_id}/cards/{card_id}/hints\n */\n updateTagHints: (teamId: string, cardId: string, body: UpdateCardHintsRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/cards/${cardId}/hints`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Fetch a list of all epics (projects) within a workspace (`team_id`). Use this endpoint to retrieve the high-level projects, their status and if they are assigned to different individuals or teams.\n *\n * @tags Boards\n * @name GetEpics\n * @summary Get epics\n * @request GET:/{team_id}/epics\n */\n getEpics: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetEpicsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Create a new epic (referred to externally as a \"Project\") in a workspace (`team_id`). Specify essential properties such as the title, list ID (status), and optional fields like icon, content, due date, priority, and owner. Customize the epic's icon and assign roles to team members. This endpoint enables breaking down projects into smaller tasks (cards) for more effective planning and progress tracking.\n *\n * @tags Boards\n * @name CreateEpic\n * @summary Create a new epic\n * @request POST:/{team_id}/epics\n */\n createEpic: (teamId: string, body: CreateEpicRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateEpicResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Create a new epics list in a workspace (`team_id`). Specify essential properties such as the title, position, icon, behavior (e.g., backlog, started, completed),or color. This endpoint allows customization of how epics are categorized and displayed.\n *\n * @tags Boards\n * @name CreateEpicsList\n * @summary Create a new epics list\n * @request POST:/{team_id}/epics/lists\n */\n createEpicsList: (teamId: string, body: CreateEpicsListRequest, params: RequestParams = {}) =>\n this.http.request({\n path: `/${teamId}/epics/lists`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Modify an epics list in a workspace (`team_id`). Update fields such as the title, position, icon, behavior (e.g., backlog, started, completed), or color. This endpoint allows customization of how epics are categorized and displayed.\n *\n * @tags Boards\n * @name UpdateEpicsList\n * @summary Update an epics list\n * @request PATCH:/{team_id}/epics/lists/{list_id}\n */\n updateEpicsList: (teamId: string, listId: string, body: UpdateListRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateListResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics/lists/${listId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetch all cards associated with an epic (project) in a workspace (`team_id`). Use this endpoint to retrieve tasks (cards) and their status assigned to different teams or individuals in various spaces.\n *\n * @tags Boards\n * @name GetAllCardsForEpic\n * @summary Get all cards for an epic\n * @request GET:/{team_id}/epics/{epic_id}/cards\n */\n getAllCardsForEpic: (teamId: string, epicId: string, params: RequestParams = {}) =>\n this.http.request<\n GetAllCardsForEpicResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics/${epicId}/cards`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Associate an existing a card to an epic (project) in a workspace (`team_id`). Specify the card ID and the epic ID to link the card to the epic. This endpoint enables streamlined management of high-level project goals.\n *\n * @tags Boards\n * @name AddCardToEpic\n * @summary Add a card to an epic\n * @request POST:/{team_id}/epics/{epic_id}/cards/{card_id}\n */\n addCardToEpic: (teamId: string, epicId: string, cardId: string, params: RequestParams = {}) =>\n this.http.request<\n AddCardToEpicResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics/${epicId}/cards/${cardId}`,\n method: \"POST\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Disassociate a card from an epic (project). This operation ensures that tasks are only linked to relevant epics for improved organization.\n *\n * @tags Boards\n * @name RemoveCardFromEpic\n * @summary Remove a card from an epic\n * @request DELETE:/{team_id}/epics/{epic_id}/cards/{card_id}\n */\n removeCardFromEpic: (teamId: string, epicId: string, cardId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics/${epicId}/cards/${cardId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Retrieve all details about an epic (project) in a workspace (`team_id`). Use this endpoint to see the description, progress, tasks and other metadata about a project.\n *\n * @tags Boards\n * @name GetEpicCard\n * @summary Get an epic card\n * @request GET:/{team_id}/epics/{epic_id}\n */\n getEpicCard: (teamId: string, epicId: string, params: RequestParams = {}) =>\n this.http.request<\n GetEpicResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics/${epicId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Modify an epic (project) in a workspace (`team_id`). Update fields such as the title, content, due date, priority, and members. Use this endpoint to keep epic details aligned with project updates or changes.\n *\n * @tags Boards\n * @name UpdateEpic\n * @summary Update an epic\n * @request PATCH:/{team_id}/epics/{epic_id}\n */\n updateEpic: (teamId: string, epicId: string, body: UpdateEpicRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateEpicResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics/${epicId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Delete an epic (project) in a workspace (`team_id`). This operation removes the project but cards associated with the epic remain intact.\n *\n * @tags Boards\n * @name DeleteEpic\n * @summary Delete an epic\n * @request DELETE:/{team_id}/epics/{epic_id}\n */\n deleteEpic: (teamId: string, epicId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/epics/${epicId}`,\n method: \"DELETE\",\n ...params,\n }),\n };\n search = {\n /**\n * @description Execute a search query across multiple workspace entities, including boards, cards, pages, and projects. Customize the search by specifying targeted fields like title or content, filtering by types of objects, or focusing on specific statuses. Additional options include filtering by project, controlling whether archived data is included, and choosing grouped or ungrouped results. This comprehensive search endpoint provides flexibility to locate relevant workspace data efficiently.\n *\n * @tags Search\n * @name GetSearch\n * @summary Get search results\n * @request GET:/{team_id}/search\n */\n getSearch: (\n teamId: string,\n query: {\n /** Search query */\n query: string;\n /** cursor for pagination */\n cursor?: string;\n /** max number of items to return. defaults to 25 */\n count?: number;\n /** Types of object you would like to search against. includes all types if not specified */\n types?: \"boards\" | \"cards\" | \"pages\" | \"projects\";\n /** Fields you would like to target in the free text search */\n fields?: \"title\" | \"content\";\n /** Whether or not to include archived data. defaults to false */\n archived?: boolean;\n /** Card statuses to filter by */\n statuses?: \"backlog\" | \"committed\" | \"started\" | \"completed\" | \"cancelled\";\n /** Project ID is a numerical string that identifies a Project. This is externally referred to as a \"Space\". */\n project_id?: string;\n /** Whether the results will be grouped by type (as opposed to all under the 'results' prop). defaults to true */\n grouped?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n SearchResults,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/search`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetch boards within a workspace that match a specified search query. The results can be filtered by archived status and paginated using a cursor. This endpoint is useful for locating boards based on specific attributes or names.\n *\n * @tags Search\n * @name GetSearchBoards\n * @summary Get boards\n * @request GET:/{team_id}/search/boards\n */\n getSearchBoards: (\n teamId: string,\n query?: {\n /** Search query. returns all results if not specified */\n query?: string;\n /** cursor for pagination */\n cursor?: string;\n /** max number of items to return. defaults to 25 */\n count?: number;\n /** Whether or not to include archived data. defaults to false */\n archived?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetSearchBoardsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/search/boards`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieve lists within a workspace that match a specified search query. Use optional filters like `board_ids` to limit results to specific boards, set a pagination cursor, or control the maximum number of items returned. If no query is specified, all lists in the workspace are returned. This endpoint helps locate and filter workspace lists (statuses) across the entire workspace.\n *\n * @tags Search\n * @name GetSearchLists\n * @summary Get lists\n * @request GET:/{team_id}/search/lists\n */\n getSearchLists: (\n teamId: string,\n query?: {\n /** Search query. returns all results if not specified */\n query?: string;\n /** cursor for pagination */\n cursor?: string;\n /** max number of items to return. defaults to 25 */\n count?: number;\n /** List of Board IDs (a Board ID is a numerical string that identifies a Board). */\n board_ids?: string[];\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetSearchListsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/search/lists`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieve tags associated with a workspace that match a specified search query. Optional filters like board_ids allow narrowing results to tags used within specific boards. Supports pagination.\n *\n * @tags Search\n * @name GetSearchTags\n * @summary Get tags\n * @request GET:/{team_id}/search/tags\n */\n getSearchTags: (\n teamId: string,\n query?: {\n /** Search query. returns all results if not specified */\n query?: string;\n /** cursor for pagination */\n cursor?: string;\n /** max number of items to return. defaults to 25 */\n count?: number;\n /** List of Board IDs (a Board ID is a numerical string that identifies a Board). */\n board_ids?: string[];\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetSearchTagsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/search/tags`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n };\n views = {\n /**\n * @description Fetches a list of views available to the user, including both private and shared workspace views. By default, only private views are retrieved, but shared views can be included using the shared query parameter.\n *\n * @tags Views\n * @name GetViews\n * @summary Get views\n * @request GET:/{team_id}/views\n */\n getViews: (\n teamId: string,\n query?: {\n /** Defaults to false to retrieve only private views */\n shared?: boolean;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetViewsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/views`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Allows users to create a new view within their workspace by specifying filters and configurations for boards, cards, or pages. The request must include a name, type (board, card, or page), and optional filtering criteria such as projects, members, or time ranges. Shared views can be created by setting the shared parameter.\n *\n * @tags Views\n * @name ViewCreate\n * @summary Create a view\n * @request POST:/{team_id}/views\n */\n viewCreate: (teamId: string, body: CreateViewRequest, params: RequestParams = {}) =>\n this.http.request<\n View,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/views`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint provides a preview of results based on specified filters for boards, cards, or pages. The request includes a type parameter (board, card, or page) and supports advanced filtering criteria, such as time ranges, specific project or member associations, and sorting preferences. Pagination is supported via cursor and count parameters.\n *\n * @tags Views\n * @name ViewPreview\n * @summary Preview results\n * @request POST:/{team_id}/views/preview\n */\n viewPreview: (\n teamId: string,\n body: GetViewPreviewRequest,\n query?: {\n /** cursor for pagination */\n cursor?: string;\n /** max number of items to return. defaults to 25 */\n count?: number;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n ViewResults,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/views/preview`,\n method: \"POST\",\n query: query,\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint fetches results for a saved view within a workspace. Users can retrieve data related to boards, cards, or pages, as defined by the view’s filters and configurations. Pagination is supported with cursor and count parameters.\n *\n * @tags Views\n * @name GetViewResults\n * @summary Get view results\n * @request GET:/{team_id}/views/{view_id}/results\n */\n getViewResults: (\n teamId: string,\n viewId: string,\n query?: {\n /** cursor for pagination */\n cursor?: string;\n /** max number of items to return. defaults to 25 */\n count?: number;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n ViewResults,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/views/${viewId}/results`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves the details of a specific view by its ID. Users can examine the filters, type, and other configurations associated with the view.\n *\n * @tags Views\n * @name GetView\n * @summary Get view\n * @request GET:/{team_id}/views/{view_id}\n */\n getView: (teamId: string, viewId: string, params: RequestParams = {}) =>\n this.http.request<\n View,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/views/${viewId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint allows users to update the configuration of an existing view by providing partial updates. Only the fields included in the request body will be modified; all other fields remain unchanged. Filters for boards, cards, or pages can be adjusted to reflect changes in projects, team members, or sorting preferences.\n *\n * @tags Views\n * @name ViewUpdate\n * @summary Update a view\n * @request PATCH:/{team_id}/views/{view_id}\n */\n viewUpdate: (teamId: string, viewId: string, body: UpdateViewRequest, params: RequestParams = {}) =>\n this.http.request<\n View,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/views/${viewId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes a specific view by its ID, removing it from the workspace. This action is irreversible and is intended for views that are no longer relevant or needed.\n *\n * @tags Views\n * @name ViewDelete\n * @summary Delete a view\n * @request DELETE:/{team_id}/views/{view_id}\n */\n viewDelete: (teamId: string, viewId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/views/${viewId}`,\n method: \"DELETE\",\n ...params,\n }),\n };\n activity = {\n /**\n * @description Fetch a list of notifications for a team member within a workspace (`team_id`). Notifications include activity updates, mentions, and other important events. Use query parameters to filter by `unread` or `unseen` notifications.\n *\n * @tags Activity\n * @name GetNotifications\n * @summary Get team member notifications\n * @request GET:/{team_id}/notifications\n */\n getNotifications: (\n teamId: string,\n query?: {\n /** Notification type to return, if unset will return all notifications regardless of 'read' or 'seen' status */\n filter?: \"unseen\" | \"unread\";\n /** cursor for pagination */\n cursor?: string;\n /** max number of notifications to return, defaults to 25 if unset */\n count?: number;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n NotificationResults,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notifications`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Update the status of multiple notifications for a team member within a workspace. Mark notifications as read or unseen to manage activity updates and mentions.\n *\n * @tags Activity\n * @name UpdateNotifications\n * @summary Batch update notifications for team member\n * @request PATCH:/{team_id}/notifications\n */\n updateNotifications: (teamId: string, body: UpdateNotificationsRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notifications`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Retrieve the count of unseen or unread notifications for a team member within a workspace. Specify the filter parameter to focus on a specific type of notification status.\n *\n * @tags Activity\n * @name GetNotificationCount\n * @summary Get a team member's notification count\n * @request GET:/{team_id}/notifications/count\n */\n getNotificationCount: (\n teamId: string,\n query: {\n filter: \"unseen\" | \"unread\";\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetNotificationCountResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notifications/count`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Update the status of a specific notification within a workspace (`team_id`). Mark notifications as read or interacted to keep track of viewed activity.\n *\n * @tags Activity\n * @name UpdateNotification\n * @summary Update a notification by ID\n * @request PATCH:/{team_id}/notifications/{id}\n */\n updateNotification: (teamId: string, id: string, body: UpdateNotificationRequest, params: RequestParams = {}) =>\n this.http.request<\n Notification,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notifications/${id}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetch the current notification digest for a workspace. Digests summarize recent activity across projects, cards, and other workspace entities, providing a consolidated view of notifications.\n *\n * @tags Activity\n * @name GetNotificationDigest\n * @summary Get a notification digest\n * @request GET:/{team_id}/notifications/digests\n */\n getNotificationDigest: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetNotificationDigestResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notifications/digests`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Customize the delivery of notification digests for a workspace. Specify the time of day for digest delivery, enable or disable the digest. This feature ensures notification delivery aligns with team members’ preferences and schedules.\n *\n * @tags Activity\n * @name UpdateNotificationDigest\n * @summary Update a notification digest\n * @request PATCH:/{team_id}/notifications/digests\n */\n updateNotificationDigest: (teamId: string, body: UpdateNotificationDigestRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateNotificationDigestResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notifications/digests`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetch the current notification digest settings for a workspace. These settings determine how and when notification digests are sent to team members. The response includes preferences for various notification triggers, such as activity on cards, pages, or projects, allowing team members to tailor their digest experience.\n *\n * @tags Activity\n * @name GetNotificationDigestSettings\n * @summary Get notification digest settings\n * @request GET:/{team_id}/notifications/digests/settings\n */\n getNotificationDigestSettings: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetNotificationDigestSettingsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notifications/digests/settings`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Update the notification digest settings for a workspace. These settings determine how and when notification digests are sent to team members. The request should include preferences for various notification triggers, such as activity on cards,pages, or projects, allowing team members to tailor their digest experience.\n *\n * @tags Activity\n * @name UpdateNotificationDigestSettings\n * @summary Update notification digest settings\n * @request PATCH:/{team_id}/notifications/digests/settings\n */\n updateNotificationDigestSettings: (\n teamId: string,\n body: UpdateNotificationDigestSettingsRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdateNotificationDigestSettingsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/notifications/digests/settings`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n };\n favourites = {\n /**\n * @description Fetch a list of the current user's favourite items within a workspace. Favourites may include various resource types such as boards, cards, pages, sprints, and folders. This endpoint provides quick access to the user's most frequently accessed resources for efficient navigation and management.\n *\n * @tags Favourites\n * @name GetFavourites\n * @summary get current user's favourites\n * @request GET:/{team_id}/favourites\n */\n getFavourites: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetFavouritesResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/favourites`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Add a resource or folder to the current user's favourites list. Specify the resource_type (e.g., card, board, page, folder) and other optional parameters like parent_id for nesting under a specific folder and position for ordering.\n *\n * @tags Favourites\n * @name AddFavourite\n * @summary add a favourite\n * @request POST:/{team_id}/favourites\n */\n addFavourite: (teamId: string, body: AddFavouriteRequest, params: RequestParams = {}) =>\n this.http.request<\n AddFavouriteResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/favourites`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Modify the properties of an existing favourite. Update attributes such as the `parent_id` to nest the resource under a specific folder, position to reorder it within a folder, or title to rename it. Use this endpoint to maintain an organized and personalized favourites structure.\n *\n * @tags Favourites\n * @name UpdateFavourite\n * @summary update favourite\n * @request PATCH:/{team_id}/favourites/{resource}\n */\n updateFavourite: (teamId: string, resource: string, body: UpdateFavouriteRequest, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/favourites/${resource}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n ...params,\n }),\n\n /**\n * @description Remove a resource or folder from the current user's favourites list (Provide the full resource identifier to target the item). This action will remove the specified resource from the user's favourites list. Use this endpoint to declutter the favourites list and maintain an organized workspace.\n *\n * @tags Favourites\n * @name DeleteFavourite\n * @summary delete user's favourite\n * @request DELETE:/{team_id}/favourites/{resource}\n */\n deleteFavourite: (teamId: string, resource: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/favourites/${resource}`,\n method: \"DELETE\",\n ...params,\n }),\n };\n importer = {\n /**\n * @description Fetch a list of all past and current import operations for a specific workspace. The response includes metadata about each import, such as its source, progress status, and associated workspace or project details. Use this endpoint to monitor import history or confirm the presence of an existing import\n *\n * @tags Importer\n * @name GetImports\n * @summary Get a list of past or current import operations\n * @request GET:/{team_id}/imports\n */\n getImports: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetImportsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/imports`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Initiate a new import operation to bring data into the workspace from supported external platforms like Trello, Jira, or Shortcut. Provide authentication credentials and specify the source platform for the import. For example: - Trello: Supply an API key and token. - Jira: Provide credentials, including email and hostname. - Shortcut: Use an API token. The response returns the details of the newly created import operation, which can be further configured or queued for processing.\n *\n * @tags Importer\n * @name CreateImport\n * @summary Set up a new import\n * @request POST:/{team_id}/imports\n */\n createImport: (teamId: string, body: CreateImportRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateImportResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/imports`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Modify the settings for a specific import operation within a workspace (`team_id`). This endpoint allows updates such as enabling or disabling the import of card covers and attachments, mapping users from the source to the target workspace, and configuring board mappings. Changes apply to ongoing or incomplete imports For user mapping, specify source and target user details, and optionally assign roles. Board mapping enables associating source boards with target projects. Use this endpoint to refine import configurations before initiating the process.\n *\n * @tags Importer\n * @name UpdateImportSettings\n * @summary Update import settings\n * @request PATCH:/{team_id}/imports/{import_id}\n */\n updateImportSettings: (teamId: string, importId: string, body: UpdateImportRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateImportResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/imports/${importId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Start processing a configured import operation for a specific workspace. This endpoint moves the import into the processing queue, beginning the transfer of data from the source platform to the workspace. Ensure all configurations, such as user and board mappings, are correctly set before invoking this endpoint\n *\n * @tags Importer\n * @name EnqueueImport\n * @summary Start the import process\n * @request POST:/{team_id}/imports/{import_id}/queue\n */\n enqueueImport: (teamId: string, importId: string, params: RequestParams = {}) =>\n this.http.request<\n QueueImportResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/imports/${importId}/queue`,\n method: \"POST\",\n format: \"json\",\n ...params,\n }),\n };\n reports = {\n /**\n * @description Fetches a report based on the provided criteria. Specify the report type (e.g., \"cfd\"), the associated board, and the date range for the report. The response contains data relevant to the selected report type, offering insights into team or project metrics.\n *\n * @tags Reports\n * @name ReportsDetail\n * @summary Get a report\n * @request GET:/{team_id}/reports\n */\n reportsDetail: (\n teamId: string,\n query: {\n /** Report type */\n type: \"cfd\";\n /** Board ID */\n board_id: string;\n /**\n * Start date of report\n * @format 1676643335\n */\n from: string;\n /**\n * End date of report\n * @format 1676643335\n */\n to: string;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetTimeReportResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/reports`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n };\n ai = {\n /**\n * @description This endpoint returns a LLM generated response for a given request. It additionally supports streaming returning [CreateLLMTaskStreamChunk](#definitions/CreateLLMTaskStreamChunk) as the json schema.\n *\n * @tags AI\n * @name CreateLlmTask\n * @summary Request an LLM task\n * @request POST:/{team_id}/ai/llm\n */\n createLlmTask: (teamId: string, body: CreateLLMTaskRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateLLMTaskResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/llm`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint returns a LLM generated response for a given question. It additionally supports streaming returning [AskAIStreamChunk](#definitions/AskAIStreamChunk) as the json schema.\n *\n * @tags AI\n * @name AskAi\n * @summary Ask a question\n * @request POST:/{team_id}/ai/ask\n */\n askAi: (teamId: string, body: AskAIRequest, params: RequestParams = {}) =>\n this.http.request<\n AskAIResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/ask`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description This endpoint creates a new AI agent in the workspace (`team_id`).\n *\n * @tags AI\n * @name CreateAiAgent\n * @summary Create a new AI agent\n * @request POST:/{team_id}/ai/agents\n */\n createAiAgent: (teamId: string, body: CreateAIAgentRequest, params: RequestParams = {}) =>\n this.http.request<\n CreateAIAgentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Return all AI agents that are created for the workspace (`team_id`).\n *\n * @tags AI\n * @name GetAiAgents\n * @summary Get all AI agents in the workspace\n * @request GET:/{team_id}/ai/agents\n */\n getAiAgents: (teamId: string, params: RequestParams = {}) =>\n this.http.request<\n GetAIAgentsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves a specific AI Agent for a team by ID.\n *\n * @tags AI\n * @name GetAiAgent\n * @summary Get an AI Agent\n * @request GET:/{team_id}/ai/agents/{agent_id}\n */\n getAiAgent: (teamId: string, agentId: string, params: RequestParams = {}) =>\n this.http.request<\n GetAIAgentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates an AI Agent with the provided fields. All omitted fields are left unmodified.\n *\n * @tags AI\n * @name UpdateAiAgent\n * @summary Update an AI Agent\n * @request PATCH:/{team_id}/ai/agents/{agent_id}\n */\n updateAiAgent: (teamId: string, agentId: string, body: UpdateAIAgentRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateAIAgentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes an AI Agent.\n *\n * @tags AI\n * @name DeleteAiAgent\n * @summary Delete an AI Agent\n * @request DELETE:/{team_id}/ai/agents/{agent_id}\n */\n deleteAiAgent: (teamId: string, agentId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Attach the AI Agent (`agent_id`) to the resource specified in the request body.\n *\n * @tags AI\n * @name AttachAiAgentToResource\n * @summary Attach the AI Agent to the specified resource.\n * @request POST:/{team_id}/ai/agents/{agent_id}/attachments\n */\n attachAiAgentToResource: (\n teamId: string,\n agentId: string,\n body: AttachAIAgentRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n AttachAIAgentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}/attachments`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Detach the AI Agent (`agent_attachment_id`) from the resource specified in the request body.\n *\n * @tags AI\n * @name DetachAiAgentFromResource\n * @summary Detach an AI Agent from a resource\n * @request DELETE:/{team_id}/ai/agents/{agent_id}/attachments/{agent_attachment_id}\n */\n detachAiAgentFromResource: (\n teamId: string,\n agentId: string,\n agentAttachmentId: string,\n params: RequestParams = {},\n ) =>\n this.http.request<\n DetachAIAgentResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}/attachments/${agentAttachmentId}`,\n method: \"DELETE\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves all Runs for the specific AI Agent.\n *\n * @tags AI\n * @name GetAiAgentRuns\n * @summary Get all AI Agent Runs\n * @request GET:/{team_id}/ai/agents/{agent_id}/runs\n */\n getAiAgentRuns: (\n teamId: string,\n agentId: string,\n query?: {\n /** Cursor for pagination */\n cursor?: string;\n /** Max number of items to return, defaults to 20 if unset */\n count?: number;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetAIAgentRunsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}/runs`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Fetch the conversational prompt iterations with the AI Assistant for the specified AI Agent (`agent_id`). This endpoint returns the history of messages and the ongoing conversation, enabling users to create and refine the AI Agent prompt by interacting with the AI Assistant.\n *\n * @tags AI\n * @name GetAiAgentPromptIterations\n * @summary Retrieve the AI Agent's Conversational Prompt Iterations\n * @request GET:/{team_id}/ai/agents/{agent_id}/prompts\n */\n getAiAgentPromptIterations: (teamId: string, agentId: string, params: RequestParams = {}) =>\n this.http.request<\n GetAIAgentPromptIterationsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}/prompts`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Create a new iteration with the AI Assistant for the specified AI Agent (`agent_id`). This action adds a new message to the ongoing conversation, enabling users to refine the AI Agent's prompt.\n *\n * @tags AI\n * @name AddAiAgentPromptIteration\n * @summary Create a new iteration with the AI Agent's Conversational Assistant\n * @request POST:/{team_id}/ai/agents/{agent_id}/prompts\n */\n addAiAgentPromptIteration: (\n teamId: string,\n agentId: string,\n body: AddAIAgentPromptIterationRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n AddAIAgentPromptIterationResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}/prompts`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Permanently delete the conversation with the AI Assistant for the specified AI Agent (`agent_id`).\n *\n * @tags AI\n * @name DeleteAiAgentPromptHistory\n * @summary Delete (reset) the conversation history with the AI Agent's Assistant\n * @request DELETE:/{team_id}/ai/agents/{agent_id}/prompts\n */\n deleteAiAgentPromptHistory: (teamId: string, agentId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/agents/${agentId}/prompts`,\n method: \"DELETE\",\n ...params,\n }),\n\n /**\n * @description Search for similar items using vector search. The provided string will be converted to a vector. The search will return relevant chunks of the most similar items to the provided vector (RAG search).\n *\n * @tags AI\n * @name VectorSearch\n * @summary Search for similar items using vector search (RAG search)\n * @request POST:/{team_id}/ai/vector_search\n */\n vectorSearch: (teamId: string, body: VectorSearchRequest, params: RequestParams = {}) =>\n this.http.request<\n VectorSearchResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/vector_search`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Retrieves a list of suggested actions given a resource type and ID.\n *\n * @tags AI\n * @name GetActions\n * @summary Get suggested actions for a resource\n * @request GET:/{team_id}/ai/actions\n */\n getActions: (\n teamId: string,\n query: {\n /** Note ID to fetch actions for */\n note_id: string;\n },\n params: RequestParams = {},\n ) =>\n this.http.request<\n GetAIActionsResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/actions`,\n method: \"GET\",\n query: query,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Generates AI actions based on the provided parameters.\n *\n * @tags AI\n * @name CreateAiActions\n * @summary Generate AI actions\n * @request POST:/{team_id}/ai/actions\n */\n createAiActions: (teamId: string, body: CreateAIActionsRequest, params: RequestParams = {}) =>\n this.http.request({\n path: `/${teamId}/ai/actions`,\n method: \"POST\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates specific fields of an AI-generated action identified by `action_id`. Currently supports updating the status and card_id properties. All omitted fields are left unmodified.\n *\n * @tags AI\n * @name UpdateAiAction\n * @summary Update AI action\n * @request PATCH:/{team_id}/ai/actions/{action_id}\n */\n updateAiAction: (teamId: string, actionId: string, body: UpdateAIActionRequest, params: RequestParams = {}) =>\n this.http.request<\n UpdateAIActionResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/actions/${actionId}`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Returns the user's daily report for the current day. If the report was not initiated before, it takes care of starting the process and will return the initial daily report. Otherwise returns the latest state of the report.\n *\n * @tags AI\n * @name GetUserDailyReport\n * @summary Retrieve a user's daily report\n * @request GET:/{team_id}/ai/users/{user_id}/daily-report\n */\n getUserDailyReport: (teamId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n GetDailyReportResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/users/${userId}/daily-report`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Starts the process to create a daily report for the user. It fetches all work items assigned to the user within the workspace and uses AI to summarize their workload to create an initial daily report.\n *\n * @tags AI\n * @name CreateUserDailyReport\n * @summary Retrieve a user's daily report\n * @request POST:/{team_id}/ai/users/{user_id}/daily-report\n */\n createUserDailyReport: (teamId: string, userId: string, params: RequestParams = {}) =>\n this.http.request<\n CreateDailyReportResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/users/${userId}/daily-report`,\n method: \"POST\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Updates the user's daily report. The available fields are the answers to the questions or the user's note/clarification/addition to the AI generated summary.\n *\n * @tags AI\n * @name UpdateUserDailyReport\n * @summary Update a user's daily report\n * @request PATCH:/{team_id}/ai/users/{user_id}/daily-report\n */\n updateUserDailyReport: (\n teamId: string,\n userId: string,\n body: UpdateDailyReportByIDRequest,\n params: RequestParams = {},\n ) =>\n this.http.request<\n UpdateDailyReportByIDResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/users/${userId}/daily-report`,\n method: \"PATCH\",\n body: body,\n type: ContentType.Json,\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Returns the user's daily report for the specified day (ID).\n *\n * @tags AI\n * @name GetUserDailyReportById\n * @summary Retrieve a user's specified daily report\n * @request GET:/{team_id}/ai/users/{user_id}/daily-report/{report_id}\n */\n getUserDailyReportById: (teamId: string, userId: string, reportId: string, params: RequestParams = {}) =>\n this.http.request<\n GetDailyReportByIDResponse,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/users/${userId}/daily-report/${reportId}`,\n method: \"GET\",\n format: \"json\",\n ...params,\n }),\n\n /**\n * @description Deletes the user's daily report for the specified day (ID).\n *\n * @tags AI\n * @name DeleteUserDailyReportById\n * @summary Delete a user's specified daily report\n * @request DELETE:/{team_id}/ai/users/{user_id}/daily-report/{report_id}\n */\n deleteUserDailyReportById: (teamId: string, userId: string, reportId: string, params: RequestParams = {}) =>\n this.http.request<\n void,\n {\n error?: Error;\n }\n >({\n path: `/${teamId}/ai/users/${userId}/daily-report/${reportId}`,\n method: \"DELETE\",\n ...params,\n }),\n };\n}\n"],"names":["en","inviteTeamMembersTo","loggingIn","defaultSpaceName","onboardingSpaceName","loginCodeSendAgain","loginCodeResent","loginCodeError","loginCodeErrorSending","loginCodeErrorExpired","loginCodeErrorRateLimited","pickAWorkspaceName","creatingWorkspace","createaSpace","subdomainExists","emailLabel","passwordLabel","checkEmail","haveSent","weSentALoginCode","sixDigit","sixDigits","confTo","checkInbox","teamName","workspaceNameLabel","workspaceNamePlaceHolder","spaceNameLabel","spaceNamePlaceHolder","min3Characters","continueWithProvider","welcomeToSuperThread","aWorkspaceIs","youCanChangeThis","LoginCode","enterLoginCode","continueWithEmail","registerProvider","onboardingEmailPlaceholder","cardsLayoutList","cardsLayoutBoard","cardsLayoutTimeline","cardsLayoutCalendar","switchAccount","all","search","searchPlaceholder","close","send","resendInviteLink","addComment","comment","replyToComment","writeComment","comments","createBoard","createPage","delete","edit","remove","done","cancel","cancelAndDiscard","enterBoardTitle","create","join","couldntJoinSpace","untitled","containsNoContent","ama","me","assigned","mentions","visited","saved","notifications","selectWhereWwhenWillNotified","recivePersonalNotification","notifyMe","save","saveChanges","archived","archive","watch","unwatch","cardArchived","cardArchivedByCard","cardArchivedByList","cardArchivedByBoard","epicArchived","epicArchivedByEpic","epicArchivedByList","boardArchived","isArchived","pageArchived","cellMerge","new","view","project","spaces","teamId","deleteCommentPopupMessage","deleteMessage","archiveResource","restoreResource","deleteResource","deleteSuccess","archiveSuccess","restoreSuccess","deleteError","archiveError","restoreError","addLink","couldntDeleteComment","couldntLoadComments","commentOnPage","emailPlaceholder","signOut","leave","browseAllSpaces","preview","goToCard","zoomIn","zoomOut","notFoundPageHeader","notFoundPageContent","addCard","addProject","next","addToCard","checklist","moveList","board","timeline","templates","cardTemplates","pageTemplates","saveCardContentYouRepeatedlyUse","savePageContentYouRepeatedlyUse","createCardTemplate","editCardTemplate","searchTemplates","name","noCardTemplates","noPageTemplates","calendar","showAllCards","hideAllCards","showWeekends","youCanCreateATemplateAbove","youCanCreateABoardFrom","createPageTemplate","editPageTemplate","templateNameAndIcon","thisIsHowPeopleFindTemplate","shortAndDescriptive","templateNameCannotBeEmpty","templateSpace","whichSpacesWillThisTemplateBeAvailableIn","templateSpaceShouldHaveAtLeastOneSpaceSelected","noSpacesFound","allSpaces","peopleWillBeAbleToEditThisAfterTheyApplyTheTemplate","theseWillBeAddedToTheCardYouApplyTheTemplateTo","taskDescription","pageBody","saveTemplate","templateNotFound","addAssignees","removeAssignees","changeAssignees","setTags","selectAll","createInThisBoard","setThisStatus","chooseABoard","chooseABoardToUseThisField","ifYouLeaveThisPageAnyChangesWillBeLost","uploadFailedClickToRetry","areYouSureYouWantToDeleteTheTemplate","applyTemplate","noTemplates","manageTemplates","uploadFilesForTemplatesIsDisabled","uploadFilesIsDisabled","noTagsFoundSelectBoardToSeeTags","createNewWorkspaceTagInSettings","noTitle","addChecklist","title","add","addItem","archiveList","actions","reply","replies","description","cardDescriptionPlaceholder","templateDescriptionPlaceholder","card","space","page","workspaceLabel","workspacePlaceholder","roboto","sansserif","serif","mono","monospace","download","move","background","share","upload","paste_image_link","embed_image","drag_and_drop","supported_files","maximum_size","createNewPage","createNewBoard","newPage","addNewPage","newBoard","addNewBoard","oneColumn","twoColumns","previewStillUpdating","emptyPage","searchSuperthread","attachFrom","searchUnsplash","fullWidth","largeText","space___","cannotExcludeAll","mustIncludeAtLeastOne","type","noResultsFound","cardStatus","makeItPrivate","thisSpaceIsPrivate","privateSpaceDescription","boards","boardsCount_one","boardsCount_other","cardsCount_one","cardsCount_other","from","hiddenMember","hiddenMemberDesc","linkTextLabel","linkUrlLabel","linkTextPlaceholder","linkUrlPlaceholder","editList","copyList","sortBy","moveAllCards","archiveAllCards","enterResourceTitle","open","openCardInBoard","editTitle","editTags","editMembers","copy","attachment","startDate","dueDate","cover","tags","activity","created","updated","reload","timePeriod","cardsAdded","cardsFinished","netChange","last7Days","last14Days","last30Days","cardsAddedBetween","cardsAddedTo","between","deletedCards","moreCardsAddedThanFinished","sameNumberOfCardsAddedAndFinished","moreCardsFinishedThanAdded","oneMoreCardAddedThanFinished","oneMoreCardFinishedThanAdded","convertToCard","searchForTag","createTag","tagName","editTagName","hideCheckedItems","showCheckedItems","deleteChecklist","attachments","versionHistory","profile","settings","email","firstNamePlaceholder","lastNamePlaceholder","displayNamePlaceholder","profileBasicInfoSubtitle","uploadProfileImageRule","workspaceLogo","logoSaved","logoRemoved","removeCover","uploadCoverImage","list","addChildCard","searchForCard","newChildCard","cancelSearch","computer","setDueDate","months","monthsAbbreviation","daysAbbreviation","daysAbbreviationLong","weekDays","time","dueDateReminder","weekBefore","daysBefore","dayBefore","hoursBefore","hourBefore","onTime","none","due","insertFile","addImage","edited","insert","overdue","continue","createdBy","press","toClose","cards","on","useArrowKeys","toNavigate","sending","inviteDoesntExist","couldntResendLink","newInviteLinkSent","inviteLinkAccepted","inviteNoLongerValid","inviteCodeIncorrect","thereAreNoFreeSeatsForThisWorkspace","thisWorkspaceCantAcceptAnyMoreMembers","spaceAccess","changeToPrivateSpace","changeToOpenSpace","changeToPrivate","changeToOpen","changeToPrivateSpaceTitle","changeToOpenSpaceTitle","ownersAdminsCreatorOfSpace","member","notMember","links","createNewView","newView","workspace","views","roadmap","myViews","workspaceViews","private","lastUpdate","viewType","filters","filter___","filters___","filterBy","filter","content","status","subscriber","creator","tag","subscribers","creators","shareWithWorkspace","discard","pageTitlePlaceholder","markAllAsRead","addTo","removeFrom","movedTo","notificationCreated","notificationAdded","commented","mentioned","dropFilesLabel","back","typeContent","hasDueDate","dueSoon","dueToday","epic","epics","searchForEpic","changedEpicFrom","addedToEpicCard","removedFromEpicCard","epicInherited","untitledView","cannotSaveUntitledView","viewSaved","pagePlaceholder","newViewTitele","checkListItemPlaceholder","viewAll","filterByUnread","pagePublished","restore","cardPathArchivedBoard","restoreMakeChange","boardUpdated","defaultBoardLayoutChangedTo","esc","assignee","assignees","no_assignee","findMembers","inviteExternalPeople","notInThisSpace","inThisSpace","notWorkspaceMember","anchorLinkErrorMessage","childCard","parentCards","blocking","blocked","favourites","dragOr","somethingHere","linkCopiedToClipboard","tomorrow","invitationsSent","invitationsFailed","retry","undo","boardMovedToSpace","pageMovedToSpace","boardNotMoved","pageNotMoved","newTag","tagExists","toggleSection","toggleContent","removeChildCardFail","moveChildCardFail","addChildCardFail","cantRemoveMembers","cantRemoveMembersFromSpace","cannotModifyMembers","inactiveMembersCannotBeAdded","duplicate","setParentCard","duplicateCard","duplicateBoard","duplicateBoardDescription","duplicateTo","duplicateDefaultTitle","duplicates","duplicateOf","markAsBlockedBy","markAsBlocking","markAsRelatedTo","markAsDuplicateOf","blocks","blockedBy","related","relatedEpics","markedEpicAsBlocking","markedEpicAsBlockedBy","markedEpicAsRelated","markedEpicAsDuplicate","relatedCards","markedCardAsBlocking","markedCardAsBlockedBy","markedCardAsRelated","markedCardAsDuplicate","removedCardRelationship","noListsInBoard","noBoardsInSpace","noBoardsInThisSpace","emptyList","cardDuplicated","boardDuplicated","viewDuplicated","viewDeleted","cardDuplicateFailed","boardDuplicateFailed","viewDuplicateFailed","cantUndoneAction","eachSpaceCanContain","browseSpaces","popupSpaceDescription","eachSpaceCanContainMultiple","pagesLowercase","kanbanBoards","and","removeFromParent","removeChildCard","changeCardParent","changeParent","changeParentDescription","editChildCardDetails","copyLink","childCardTitleNotUpdated","addNewChildCard","enterCardTitleOrFind","createNewCard","unsplashImage","shareToWeb","publishesSubpagesButNoComments","pageIsSharedToWeb","shared","openSharedPage","pageIsSetToPrivate","profileSettings","switchWorkspace","archivedItems","logOut","helpFeedback","help","joinSlack","askQuestions","contactUs","letUsKnow","assign","unassign","pageIsNoLongerShared","favourite","unfavourite","allowSearchEngines","searchEngineIndexing","searchIndexingEnabled","searchIndexingDisabled","attachIconFrom","addIcon","addCoverImage","pageDuplicated","pageDuplicateFailed","copyOf","displayNameDescription","embedVideo","removePullRequest","viewOnGitHub","setUpGHIntegration","integrateSuperthread","githubIntegradionDescripiton","connectGithub","connectedAccounts","integrationConnectedToSuperthread","enabledBy","select","integrations","importer","github","github_pull_request","gitlab","jira","trello","importFrom","selectYour","usersToSuperthreadUsers","issues","teams","setUpImport","importHistory","importBoards","selectWhichBoards","runImport","quickImport","importBoardIntoExsistingSpace","start","started","DontImport","map","dontImportUsers","ImportUsers","importAs","selectUser","inviteByEmail","users","options","chooseAditionslOptions","importAttachments","includeCardCoverImages","importInProgress","importError","importSuccess","importUnstarted","timeStarted","completed","showCompleted","details","finish","validEmail","emailAdresses","person1Email","addToSpaces","addSpaces","browseProjects","createAndBrowseSpaces","nameIsRequired","noProjectFound","memberExplanation","adminExplanation","guestExplanation","connect","selectBoardImport","selectUsersImport","notImportArchivedIssues","importTasksIntoSuperthread","connectAccount","completedOn","importedBy","timeCreated","createdDate","updatedDate","numberOfImportedBoards","numberOfImportedUsers","importingIsFinished","importing","selectService","account","importers","general","manageWorkspaceSettings","dangerZone","notOwnerOrAdmin","archiveWorkspace","archiveWorkspaceDescription","archiveWorkspaceDescriptionDetail","deleteWorkspace","deleteWorkspaceDescription","deleteWorkspaceDescriptionDetail","avatarAppearance","uploadImage","successfullySaved","errorSave","copyURL","copyUrl","copyCardUrl","copyPageUrl","copyBoardUrl","copySpaceUrl","copyGitBranchNameToClipboard","copyGitBranchName","branchCopiedToClipboard","subscribe","unsubscribe","pullRequestAutomation","prAutomationDescription","whenACardIsLinkedToPR","whenPRTargetsTheBranch","addBranchSpecificAutomation","automationMustHaveBranchName","addBranchSpecificAutomationErrorAlreadyExists","invalidGitBranchName","branchSpecificAutomationAdded","branchSpecificAutomationUpdated","branchSpecificAutomationRemoved","deleteAutomation","deleteThisAutomation","deleteAutomationConfirmation","whenPRChangesTo","moveCardToList","doNotMove","draftPROpened","pROpened","pRReviewRequest","pRMerged","pRClosed","noListInBoard","unassigned","viewParentCard","changeParentCard","removeParentCard","goToParentCard","discardAndClose","changeStatus","createCardsInSelectedBoard","createCardIn","maxFileSize","addAttachment","createChecklist","assignedToMe","movedTAaNewList","moved","published","cardComments","pageComments","movedBetweenSpaces","addedToASpace","noduedate","now","nowActivity","anywhereYouAreMentioned","anyCommentsOnResources","ifYouAreMemberOfABoard","manageMembers","manageWhoHasAccess","active","suspended","inviteMembers","inviteToWorkspace","emailAddress","inviteAs","teamMembers","gitHubConnected","nothingToShow","findTagsOrCreateNew","deleteTag","addNewBoardOrPage","spaceSettings","rename","changeIcon","addToFavorites","removeFromFavorites","viewmoreassignees","noassignee","currentuser","aPrivateSpace","areYouSureYouWantToRemove","areYouSureYouWantToLeave","youAreTheOnlyPersonInThisPrivateSpace","whenYouLeaveAPrivateSpace","youCanRejoinThePublicSpace","areYouSureYouWantToRevoke","areYouSureYouWantToTransferOwnership","transferOwnership","transferSpaceOwnershipConfirmed","transferSpaceOwnershipShort","transferSpaceOwnershipDescription","transferSpaceOwnershipBeforeLeaving","confirm","revoke","notFound","itemNotFound","urlDoesntLeadAnywhere","itemMightBeDeleted","deleteItem","deleteSpace","ifYouWantToDeleteSpace","ifYouWantToDeleteResource","ifYouWantToArchiveResource","typeTheNameOfTheSpace","removeMember","leaveWorkspace","revokeInvite","invited","pending","admin","owner","guest","inviteSent","resendInvite","whatsNew","viewUpdates","whenYouCreateTags","merge","theSpace","haveSameTags","doYouWantToMerge","tagWithThisNameWorkspace","tagWithThisNameSpace","editTag","workspaceTags","manageTags","youCantUndo","merge2spaceTags","areYouSureYouWantToDelete","uploaded","cardCreatedInResource","rememberBoard","cardTitle","pageTitle","cardDescription","editAsignees","actionFailed","thisBoardIsEmpty","changesAreSavedAuto","untitledCard","editAssignees","showChildCards","hideChildCards","createAndManageSpaces","thereAreNoListInBoard","pageMovedToParent","subscribedToResourceUpdates","unsubscribedFromResourceUpdates","subscribingToResourceUpdatesFailed","unsubscribingFromResourceUpdatesFailed","couldntArchiveCard","cardRestored","dueOn","today","yesterday","attached","removed","updatedTheStartDate","setTheStartDate","removedStartDate","updatedTheDueDate","setTheDueDate","removedDueDate","changedStausFrom","editStatus","editName","numberOfCards","createdCard","createdEpic","people","assignedMember","archivedTheCard","restoredTheCard","archivedTheEpic","restoredTheEpic","theCardDescription","theCardTitle","theEpicDescription","theEpicTitle","chooseWorkspaceToConnectIntegration","connectSuperthreadWith","zapierIntegradionDescripiton","connectToZapier","zapier","openZapier","allow","integrationWillHave","youMayBeSharing","stSettings","seeIntegration","privacyPolicy","termsOfService","makeSureYouTrust","integrationIsRequesting","previewStInSlack","lookingForSlackNotifications","turnThemOnInYour","notificationsSettings","connectToSlack","orLc","useBoardsToVisualise","collaborativeDocuments","filterAcrossTheEntire","useFiltersToCreate","kanbanBoardsUc","importYourExistingTasksFrom","importTasks","leaveSpace","viewSpace","deleted","leaveNamedSpace","leaveNamedPrivateSpace","deleteAndLeaveNamedPrivateSpace","youLeftNamedSpace","youCannotLeaveTheSpace","joinSpace","joinThisSpace","hasUnsupportedFileType","maxAllowedImageSize","maxAllowedImageResolution","movedFromSpace","untitledPage","hideChildPages","showSubpages","addedTo","addMembers","removedFrom","viewMembers","enableScrollFocus","copyLinkToHeading","joined","addOwner","noOwner","setOwner","font","addNewFolder","deletedSuccesfully","addedSuccesfully","clickToUpdate","NewVersionAvailable","addedChildCard","removedChildCard","removedChecklist","addedChecklist","addedChecklists","markedAsIncomplete","completedChecklistItem","addedParentCard","removedParentCard","changedParentCardFrom","deleteFolder","renameFolder","lockSidebar","hideSidebar","appearance","changeHowSuperthreadLooksAndFeels","matchSistemSettings","darkMode","lightMode","darkGreyMode","darkBlueMode","lightBlueMode","year","quarter","month","addNewPageInside","addChildPage","theme","boardSettings","reaction","inbox","resolve","unresolved","unresolve","unresolvedOnly","resolved","unresolveComment","resolveComment","commentResolved","commentUnresolved","resolvedOnly","allComments","noUnresolvedComments","noResolvedComments","noComments","about","markAsRead","markAsUnread","markAllAsResolved","showUnresolved","showResolved","noNotifications","noNewNotifications","noUnresolvedNotifications","youCanShow","notificationsInstead","subscribeToGetNotifications","selectANotificationToViewIt","youCanMarkANotificationAs","unreadOr","resolveIt","inboxNotificationsAreUnresolved","notificationsAreNew","wantNotificationsIn","slaskQuestionMarkVisit","noCardsMatchChosenFilter","noCardsFound","boardMoved","pageMoved","openPage","hasBeenDeleted","deletedResourcePlain","deletedResourceWithName","this","andTheEntire","reactionsToYourComments","youWereRemoved","fromPrivateSpace","privateSpaceDesc","privateSpace","everything","taskIsOverdue","endDateIsBeforeStartDate","moveCardIntoBoard","inList","searchForParentCard","icons","emojis","custom","moveToBoard","previous","manualOrder","sortedBy","toCancelDrag","groupBy","subpageCreated","tableOfContents","editWorkspaceTagsInSettings","sideDocked","modalOverlay","cardLayout","switchLayout","showSidebar","notags","resetLayoutToBoardDefault","alreadyOpen","defaultBoardLayout","defaultBoardLayoutDescription","boardDescription","listDescription","timelineDescription","calendarDescription","boardName","memberRemoved","resetLayoutToViewDefault","earliestDueDate","highestPriority","largestEstimate","STIsMostUseful","readOnly","boardWillNotShowOnPublicPage","removeBoard","noSprints","noNonSprintBoardsInThisSpace","inviteToWorkspaceDescription","alreadyMembersOfWorkspace","information","success","error","warning","typeSomething","invite","latest","cardChildrenTitle","childCards","members","removeFromCard","displayName","firstName","lastName","update","openSuperthread","infoNotification","errorNotification","alertNotification","successNotification","SignInIntoExistingWorkspace","preferences","pages","gridView","listView","lastCreated","lastUpdated","searchMembers","or","add_collaborators","selectWorkspace","selectWorkspaceIntegrations","change","createNewWorkspace","notSeeingYourWorkspace","dismiss","load","youAlreadyHave","openBoard","cardCannotBeMovedDirectlyToSpace","clickToRename","info","clearAllFilters","is","is_not","includes","excludes","fullscreen","commentsActivity","show","newestFirst","oldestFirst","pageCreated","createNewList","enterListName","listStatus","print","reactedWith","you","cannotModidyListStatus","onlineAgain","youAreOffline","exploring","deactivated","deleteView","saveAsNewView","noResults","thisFilterDoesNotMatch","rememberChoice","electronOpenInApp","electronOpenInDesktopApp","electronOpenLinksInDesktopApp","electronAutoOpenLinksInDesktopApp","electronCurrentLinkOpenedInApp","electronAppIsInstalled","electronUserMentioned","electronResourceMoved","electronMemberAdded","electronMemberRemoved","electronCommentAdded","electronResourceArchived","electronUserReacted","results","tasks","updateAppToEditPage","electronRecentlyViewed","electronOpenDesktopApp","electronRedirectingToApp","updateAppToEditComment","updateAppToEditCard","connectToImporter","accessToken","installationCloudHostname","findInYour","emailAddressYouUseFor","selectWhich","selectBoardsToImport","importYourExistingNameToST","jiraBoardMapingSubtitle","trelloBoardMapingSubtitle","shortcutBoardMapingSubtitle","jiraQuickImportText","trelloQuickImportText","shortcutQuickImportText","jiraCustomImportText","trelloCustomImportText","shortcutCustomImportText","superthreadSpace","mapImporterUsersToSTUSers","startImport","wellLetYouKnowWhenImportFinishes","feelFreeToContuinueUsingST","dontImportThisUser","matchToAnExistingSTUser","createANewUser","projectsCannotBeMovedToSpaces","importOpenStories","importOpenStoriesDesc","importStaleStories","importStaleStoriesDesc","wedLikeToTake","thirtySeconds","toShowYouAround","getStarted","youCanAlways","youreGoodToGo","quickStart","getToKnow","desktopApp","thisLinkWasOpenedInApp","openHereInstead","browseAndManageSpaces","manageSpaces","searchSpaces","createSpace","addADescription","showingNumberOfSpaces","noResultsFoundFor","changeDescription","contents","createSpaceSubtitle","spaceNameAndIcon","somethingShortAndClear","youCanChangeThisLater","descritionOptional","whatIsThisSpaceFor","addPeopleToSpaceOptional","addPeople","addPeopleSubtitle","openSpace","openSpaceSubtitle","privateSpaceSubtitle","inviteNewPeople","inviteeEmailAddress","inviteSectionSubtitle","couldntCreateSpace","spaceCreated","emailAlreadyAdded","addingSomeMembersFailed","founder","director","teamLead","individualContributor","softwareEngineering","design","productManagement","marketing","finance","development","marketer","sales","clickToView","clickToDownload","business","pickAllThatApply","pickOne","customerSupport","humanResources","socialMedia","wordOfMouth","searchEngine","advertising","searchForSpaceOrBoard","starTypingToSearchFor","newCard","addedCommentHiddenByFilter","createdCardHiddenByFilter","viewWork","removeFromSpace","assignedInThisBoard","layout","createdCardMovedSortOrder","createCardGroupBy","canNotMoveCardInsameBoard","latestReply","replyLabel","totalReplies","olderReplies","leaveReply","hideReplies","showReplies","oneReply","discardComment","areYouSureYouWantToDiscard","skipToEnd","priority","noPriority","urgent","high","medium","low","priorities","changedThePriorityFrom","changedTheEstimateFrom","setThePriorityTo","setTheEstimateTo","removedTheEstimate","thereAreNoPages","createNewPageOrDrag","thereAreNoBoards","createNewBoardOrDrag","commentsOnly","activityOnly","seeCardsWithThisTag","noResultsForThatName","youCan","createASpace","named","estimate","onePoint","numberOfPoints","extraSmall","small","mediumSize","large","extraLarge","noEstimate","settingsProjectsPreferencesSubtitle","howCardsAreEstimated","disableCardEstimationForThisSpace","fibonacciPoints","exponentialPoints","tshirtSizes","setEstimate","emailNotificationHelperText","estimated","cardSpaceEstimationTurnedOff","totalEstimatePointsTooltipContent","estimates","assignItTo","searchForACard","createACard","archivedCardsAreHidden","enterANameAbove","chooseFiltersYouWouldLike","cannotCreateViewOnMobile","viewCardInBoard","guestsMustBeAddedToOneSpace","createCard","suggestedBasedOnTitle","acceptSuggestion","rejectSuggestion","suggestionPlaceholderText","changeEmail","logOutAndContinue","confirmAccountOwnership","reauthenticateEmailDescription","enterANewEmail","resendLoginCode","emailAddressTakenByAnotherUser","assistant","changeTone","simplify","summarize","translate","generate","replaceText","insertBelow","assistanceWith","copiedToClipboard","academic","casual","confident","friendly","neutral","professional","aiFeatures","emailDigestSentAt","inYourTimezone","timezone","setAutomatically","searchTimezone","changeYourTimezoneInProfile","enableNotificationsFirst","turnOnAIAssitantInFormatingToolbar","superthreadSendingDataTo","experimentalFeatureMayChangeFunctionality","contactUsToEnable","boardOpenedInTheBackground","resetFilters","aCardMustHaveATitle","showAll","showLess","hideEmptyGroups","showAnotherAssignee","showAnotherTags","spaceMembers","addExistingMembers","inviteNewMembers","spaceDetails","makeBoardFullWidth","askAiAssistantSearch","backToSearchResults","sources","askAiQuestionLong","spaceSprintsSettings","turnOnSprintsForThisSpace","turnOnSprintsDesc","ownersAdminsCanTurnOnSprints","onlyOwnerOfPrivateSpace","onlySpaceOwnerCanModifyMembers","cannotModifySpaceOwner","sprintLength","weeks","sprintStartOn","coolDownPeriod","coolDownPeriodDesc","coolDownPeriodLength","sprintBoardStatuses","sprintBoardStatusesDesc","addStatus","dueInDays","sprints","addSprint","sprint","openSprint","renameSprint","markAsComplete","changeSprintDates","changeSprintDatesFor","cancelSprint","changeDates","chooseNewStartAndEndDates","renameSprintDescription","startDateIsEarlierThanPreviousEndDate","enterSprintName","cancelSprintWarning","dontCancel","upgradePlan","upgradePrivateSpaceTitle","upgradePrivateSpaceDescription","upgradePlanBadgeTooltip","upgradeUserRolesTitle","upgradeUserRolesDescription","upgradedWorkspace","sprintSettings","electronDownloadApp","electronDownloadAppDescription","macArm64Label","macx64Label","mailCopiedToClipboard","cardsWithNoSprint","showCardsFrom","yourColor","thisColorWillHelp","logo","prStateOpen","prStateClosed","prStateMerged","invitingPeopleToWorkspace","upgradePublicPageIndexingTitle","upgradePublicPageIndexingDescription","shortcutWarningText","coolDown","noBoardsOrPages","language","usersWork","renameAttachment","deleteAttachment","timelineLayoutDescription","upgradeViewsDescription","createNewItem","statusType","spaceLimitReached","freePlanUsageLimits","item","usage","limitReachedLong","limitReached","resourceAndContentWillBeDeleted","resourceWillBeDeleted","epicWillBeDeleted","listNameLabel","deleteList","itemName","moveCardIntoSprint","addView","timeCreatedSort","timeUpdatedSort","dueDateSort","noSprintsLabel","createdViaEmailFrom","couldNotBeVerified","createCardsViaEmailTitle","createCardsViaEmailDescription","onlyCurrentAddressWillWork","regenerate","emailCopiedToClipboard","emailRegenerated","slackChannelNotifications","slackChannelNotificationsTitle","slackChannelNotificationsDescriptionDisabled","slackChannelNotificationsDescriptionEnabled","slackIntegrationError","boardDoesNotExists","boardActivity","sendTo","slackPrivateMessage","slackPrivateGroup","slackPrivateChannel","webhookNotificationCardAddedBoard","webhookNotificationCardAddedList","webhookNotificationCardCommented","webhookNotificationCardDueDate","folder","yourSpaces","quoteReply","itemHasBeenDeleted","deletedNotification","searchForBoard","activeSprintText","loadMoreSprints","try","seeAllWorkspaces","workspaceSettings","switchToRecentWorkspace","icon","addToSprint","addToProject","goToProject","addTags","cancelled","sprintBoards","sprintSettingsBoardsDescription","addedCard","removedCard","addNewCard","addExistingCard","changeEpicOrParent","cardAlreadyHasEpicOrParent","changeEpic","childCardIsPartOfEpic","parentCardHasNoEpic","parentCardIsPartOfEpic","childCardsEpicWillBeRemoved","childCardsEpicWillChangeToParents","removeEpic","epicWillNoLongerBeAssociated","childCardAlreadyHasParent","cardsDirectlyAddedToEpicCantHaveParent","epicNoTagsFound","cannotChangeStatusForCardsInFinishedSprint","cannotChangeStatusForArchivedCards","cantMoveArchivedCardToSprint","relatedTo","changePriority","changeEstimate","changeTags","changeSprint","goToSprint","pastSprints","currentAndPlannedSprints","seeAllSprints","currentAndNextSprint","branchSpecificAutomationAddFailed","branchSpecificAutomationUpdateFailed","branchSpecificAutomationRemoveFailed","thereAreNoCurrentOrPlannedSprints","thereIsNoCurrentOrNextSprint","movedCardFrom","movedEpicFrom","rolledCardFrom","sprintMarkedAsCompleted","sprintMarkedAsCancelled","cardIsParent","cardIsChild","cardIsRelated","parentCard","moveTo","pageMovedTo","thisSpaceIsEmpty","createSomethingToGetStarted","visualiseYourWorkflow","captureImportantInformation","organiseWorkIntoSprints","filterYourWorkspaceToCreateViews","turnOnSprints","cardViews","convert","convertCardToEpic","couldNotConvertCardToEpic","cardSuccessfullyConvertedToEpic","convertedCardWillLose","convertedThisCardToEpic","spaceLevelTags","effortEstimate","existingEpic","roadmapMustHaveAtLeastOneStatus","chosenPageIsAlreadySubpage","searchForResults","parentCardIs","projectIs","convertedTo","moveToCompletedSprint","onlyDoneCardsCanBeMovedToCompletedSprint","removeCardFromProject","roadmapOpenedInTheBackground","unfavouriteCurrentSprint","favouriteCurrentSprint","unfavouriteNextSprint","favouriteNextSprint","unfavouriteSprintName","favouriteSprintName","currentSprint","parentWillBeRemovedIfAddToProject","cannotArchiveCardFromSprint","sprintCompleted","sprintCancelled","sprintDatesChanged","myWorkAndNotes","notes","suggestedActions","noSuggestedActions","noChanges","changes","cardUpdatedSuccessfully","commentAddedSuccessfully","updateCard","moveCard","assignMembers","removeMembers","generatingSuggestedActions","replaceContent","appendContent","addDescription","addDueDate","setTitle","reject","accept","finaliseDetails","tidyUp","convertTo","newNote","searchNotes","favouriteNote","archiveNote","deleteNote","original","tidied","untitledNote","enhanced","minimize","maximize","createNewNote","youDontHaveAnyNotes","transcript","assignedCards","createdCards","noTranscriptAvailable","enhanceNotesUsingMacApp","downloadApp","enhance","macIntel","appleSilicon","enhanceNotesUsingAI","showTranscript","epicCreated","analysingTranscript","comparingYourNotes","readingYourNotes","enhancingYourNotes","finished","note","epicMustHaveTitle","seeAllNotes","autoSaved","projectsAreTrackedOnRoadmap","addCardsToProject","projectEmptyStateDescription","cardInProjectEmptyStateFooter","addCardsThatContributeToProject","noProject","noteTemplates","noteTemplatesSettingsSubtitle","noNoteTemplates","createNoteTemplate","sections","sectionHeading","sectionDescriptionPlaceholder","addSection","superthread","deletedTemplate","autoEnhanced","meetingContext","meetingContextPlaceholder","meetingContextDescription","duplicateTemplate","favouriteTemplates","introduction","sampleSectionDescription","allowSuperthreadToTranscribe","superthreadCanEnhance","transcribeYourVoice","transcribeOthersVoice","allowMicrophoneCapture","allowSystemAudioCapture","microphoneAccessNotAllowedTitle","microphoneAccessNotAllowedDesc1","microphoneAccessNotAllowedDesc2","microphoneAccessNotAllowedDesc3","systemAccessNotAllowedTitle","systemAccessNotAllowedDesc1","systemAccessNotAllowedDesc2","systemAccessNotAllowedDesc3","editNoteTemplate","viewNoteTemplate","viewTranscript","transcribeHereInstead","currentlyTranscribingAnotherNote","transcribeHere","resume","pause","transcribe","currentlyTranscribing","transcribingOnlyAvailableOnMac","startTranscription","stopTranscription","openTranscribingNote","notesSettings","theseSettingsArePersonalToYou","transcriptionJargonTitle","transcriptionJargonPlaceholder","transcriptionJargonDescription","selectANote","noteDoesntExist","deleteSection","untitledSection","messageAgentAssistant","initialAgentMessage","agentMessageError","agentInstructions","version","templateWithChildCardsNotAllowed","copyNoteToClipboard","noteCopiedToClipboard","copyTranscriptToClipboard","transcriptCopiedToClipboard","anyoneWithThisLinkCanViewNote","notesEnhancedBySuperthread","connectGoogleCalendar","googleCalendarIntegration","googleCalendarIntegrationSubtitle","calendarAccountConnected","disconnect","showCalendarMeetingsUpTo","dayAheadInNotesList","daysAheadInNotesList","eventTypesToIncludeInNotesList","createNoteFromUpcomingMeeting","noUpcomingMeetings","seeUpcomingMeetings","searchForAnApp","meetingAppsWatched","automaticMeetingDetectionTitle","automaticMeetingDetectionDescription","joinMeetingFromNote","searchPlaceholderAskAiNotes","askAi","transcribeHereInsteadPositive","notesAreBetterWithOurApp","downloadTheMacOSApp","toTranscribeMeetings","notifyUpcomingMeetingsTitle","notifyUpcomingMeetingsDescription","requiresMacosAppOne","requiresMacosAppTwo","meetingsMenuBarTitle","meetingsMenuBarDescription","meetingName","meetingTime","searchLanguage","transcriptionNotAvailableOnPlan","index_default","E","prototype","callback","ctx","e","push","fn","once","self","listener","off","apply","arguments","_","emit","data","slice","call","evtArr","i","len","length","evts","liveEvents","module","exports","TinyEmitter","BOX_CLASS","CONTENT_CLASS","BACKDROP_CLASS","ARROW_CLASS","SVG_ARROW_CLASS","TOUCH_OPTIONS","passive","capture","TIPPY_DEFAULT_APPEND_TO","document","body","getValueAtIndexOrReturn","value","index","defaultValue","Array","isArray","v","isType","str","toString","indexOf","invokeWithArgsOrReturn","args","debounce","ms","arg","clearTimeout","timeout","setTimeout","splitBySpaces","split","Boolean","normalizeToArray","concat","pushIfUnique","arr","unique","getBasePlacement","placement","arrayFrom","removeUndefinedProps","obj","Object","keys","reduce","acc","key","undefined","div","createElement","isElement","some","isNodeList","isMouseEvent","isReferenceElement","_tippy","reference","getArrayOfElements","querySelectorAll","setTransitionDuration","els","forEach","el","style","transitionDuration","setVisibilityState","state","setAttribute","getOwnerDocument","elementOrElements","_element$ownerDocumen","_normalizeToArray","element","ownerDocument","isCursorOutsideInteractiveBorder","popperTreeData","event","clientX","clientY","every","_ref","popperRect","popperState","props","interactiveBorder","basePlacement","offsetData","modifiersData","offset","topDistance","top","y","bottomDistance","bottom","leftDistance","left","x","rightDistance","right","exceedsTop","exceedsBottom","exceedsLeft","exceedsRight","updateTransitionEndListener","box","action","method","actualContains","parent","child","target","_target$getRootNode","contains","getRootNode","host","currentInput","isTouch","lastMouseMoveTime","onDocumentTouchStart","window","performance","addEventListener","onDocumentMouseMove","removeEventListener","onWindowBlur","activeElement","instance","blur","isVisible","bindGlobalEventListeners","isBrowser","isIE11","msCrypto","pluginProps","animateFill","followCursor","inlinePositioning","sticky","renderProps","allowHTML","animation","arrow","inertia","maxWidth","role","zIndex","defaultProps","appendTo","aria","expanded","delay","duration","getReferenceClientRect","hideOnClick","ignoreAttributes","interactive","interactiveDebounce","moveTransition","onAfterUpdate","onBeforeUpdate","onCreate","onDestroy","onHidden","onHide","onMount","onShow","onShown","onTrigger","onUntrigger","onClickOutside","plugins","popperOptions","render","showOnCreate","touch","trigger","triggerTarget","defaultKeys","setDefaultProps","partialProps","getExtendedPassedProps","passedProps","plugin","_name","getDataAttributeProps","propKeys","valueAsString","getAttribute","trim","JSON","parse","evaluateProps","out","innerHTML","dangerouslySetInnerHTML","html","createArrowElement","className","appendChild","setContent","textContent","getChildren","popper","firstElementChild","boxChildren","children","find","node","classList","backdrop","onUpdate","prevProps","nextProps","_getChildren","removeAttribute","removeChild","$$tippy","idCounter","mouseMoveListeners","mountedInstances","createTippy","showTimeout","hideTimeout","scheduleHideAnimationFrame","lastTriggerEvent","currentTransitionEndListener","onFirstUpdate","currentTarget","isVisibleFromClick","didHideDueToDocumentMouseDown","didTouchMove","ignoreOnFirstUpdate","listeners","debouncedOnMouseMove","onMouseMove","id","popperInstance","isEnabled","isDestroyed","isMounted","isShown","clearDelayTimeouts","setProps","hide","hideWithInteractivity","enable","disable","unmount","destroy","_props$render","pluginsHooks","hasAriaExpanded","hasAttribute","addListeners","handleAriaExpandedAttribute","handleStyles","invokeHook","scheduleShow","getDocument","getNormalizedTouchSettings","getIsCustomTouchBehavior","getIsDefaultRenderFn","_instance$props$rende","getCurrentTarget","parentNode","getDefaultTemplateChildren","getDelay","isShow","fromHide","pointerEvents","hook","shouldInvokePropsHook","_instance$props","pluginHooks","handleAriaContentAttribute","attr","nodes","currentValue","nextValue","replace","cleanupInteractiveMouseListeners","onDocumentPress","actualTarget","composedPath","removeDocumentPress","onTouchMove","onTouchStart","addDocumentPress","doc","onTransitionedOut","onTransitionEnd","onTransitionedIn","eventType","handler","onMouseLeave","onBlurOrFocusOut","removeListeners","_lastTriggerEvent","shouldScheduleClickHide","isEventListenerStopped","wasFocused","scheduleHide","isCursorOverReferenceOrPopper","getNestedPopperTree","_instance$popperInsta","getBoundingClientRect","shouldBail","relatedTarget","createPopperInstance","destroyPopperInstance","_instance$props2","computedReference","contextElement","tippyModifier","enabled","phase","requires","_ref2","_getDefaultTemplateCh","attributes","modifiers","padding","adaptive","createPopper","mount","_getNormalizedTouchSe","touchValue","touchDelay","requestAnimationFrame","cancelAnimationFrame","nestedPopper","forceUpdate","isAlreadyVisible","isDisabled","isTouchAndTouchDisabled","visibility","transition","_getDefaultTemplateCh2","_instance$popperInsta2","offsetHeight","_getDefaultTemplateCh3","_box","_content","isAlreadyHidden","_getDefaultTemplateCh4","tippy","targets","optionalProps","elements","instances","applyStyles","effect","initialStyles","position","strategy","margin","styles","mouseCoords","activeInstances","storeMouseCoords","addMouseCoordsListener","removeMouseCoordsListener","isInternalUpdate","wasFocusEvent","isUnmounted","getIsInitialBehavior","addListener","removeListener","unsetGetReferenceClientRect","isCursorOverReference","rect","relativeX","relativeY","width","height","webpackAsyncContext","req","__webpack_require__","o","Promise","then","Error","code","ids","require","CollaborationResourceType","MetaRobotValue","NoteTranscriptSource","MemberRole","TeamMemberRole","TeamMemberStatus","Font","ActivityType","ActivityEntryResourceType","CommentStatus","ListBehavior","CardStatus","SprintState","BoardLayout","TagColor","LinkedCardType","NotificationType","IntegrationSettingsType","ExternalLinkType","ImportSource","EstimateSystem","ActionStatus","ContentType","HttpClient","constructor","securityWorker","secure","format","axiosConfig","securityData","setSecurityData","request","async","path","query","params","secureParams","requestParams","mergeRequestParams","responseFormat","FormData","createFormData","Text","stringify","headers","responseType","url","axios","baseURL","params1","params2","defaults","toLowerCase","stringifyFormItem","formItem","input","formData","property","propertyContent","isFileType","Blob","File","append","Api","http","_this","getOAuth2Client","clientId","createIntegrationInstallation","integration","Json","getIntegrationInstallations","getInstallation","installationId","deleteInstallation","getIntegrationSettings","updateIntegrationSettings","getGcalEvents","auth","getUser","userId","updateUser","addUserTeam","getPendingInvites","submitSignupAnswers","updateUserEmail","getUserSettings","updateUserSettings","sendUpdateUserEmailCode","getOnboardingActions","updateOnboardingActions","createTeam","getAvailablePlans","getTeam","updateTeam","deleteTeam","getTeamMembers","updateMember","getTeamInvites","createTeamInvite","deleteTeamInvite","resendInviteLinkCodeEmailByTeam","getTeamFeatures","setTeamFeature","featureId","getSubscription","createTeamBillingSession","createTeamBillingManagementSession","getOAuthRedirect","authProvider","loginOAuthCode","loginWithCode","sendLoginCodeEmail","loginWithInvite","resendInviteLinkCodeEmailByUser","refreshToken","logout","projects","getProjects","createProject","getProject","projectId","updateProject","deleteProject","trashProject","untrashProject","setProjectOwner","addProjectMember","deleteProjectMember","getPages","getPageTemplates","getPageTemplate","templateId","updatePageTemplate","deletePageTemplate","getPage","pageId","updatePage","deleteAPage","getPageCollaboration","getPageVersions","deletePageIcon","deletePageCover","archivePage","copyPage","addPageWatcher","deletePageWatcher","getNoteTemplates","getNoteTemplate","updateNoteTemplate","deleteNoteTemplate","getNotes","createNote","getNote","noteId","updateNote","addNoteAttendee","removeNoteAttendee","applyNoteTemplate","updateEnhancedNote","enhancedNoteId","deleteEnhancedNote","activityDetail","activityDetail2","activityId","activityPartialUpdate","activityDelete","getComments","createComment","getComment","commentId","updateComment","deleteComment","updateCommentStatus","createCommentReaction","reactionId","deleteCommentReaction","getChildComments","createChildComment","getChildComment","childCommentId","updateChildComment","deleteChildComment","files","getFiles","uploadFiles","getFile","fileId","updateFile","deleteFile","getTags","mergeTags","updateTag","tagId","getBoards","getBoard","boardId","updateBoard","deleteBoard","copyBoard","addBoardMember","deleteBoardMember","addBoardWatcher","deleteBoardWatcher","updateBoardEmail","createNewVcsBranchAutomation","updateBranchNameVcsBranchAutomation","branch","deleteBoardVcsBranchAutomation","createWebhookNotification","updateWebhookNotificationBoard","webhookType","deleteWebhookNotification","getSprintSettings","setSprintSettings","getSprints","createSprint","getSprint","sprintId","updateSprint","deleteSprint","createNewSprintVcsBranchAutomation","updateBranchNameSprintVcsBranchAutomation","deleteSprintVcsBranchAutomation","getLists","createList","getList","listId","updateList","addListWatcher","deleteListWatcher","updateWebhookNotificationList","getCards","getCardTemplates","getCardTemplate","updateCardTemplate","deleteCardTemplate","getCard","cardId","deleteCard","createCardCopy","addCardWatcher","deleteCardWatcher","addCardMember","deleteCardMember","getChecklist","checklistId","updateChecklist","getChecklistItems","createChecklistItem","updateChecklistItem","itemId","deleteChecklistItem","childCardId","addLinkedCard","removeLinkedCard","linkedCardId","addCardTags","removeCardTag","updateTagHints","getEpics","createEpic","createEpicsList","updateEpicsList","getAllCardsForEpic","epicId","addCardToEpic","removeCardFromEpic","getEpicCard","updateEpic","deleteEpic","getSearch","getSearchBoards","getSearchLists","getSearchTags","getViews","viewCreate","viewPreview","getViewResults","viewId","getView","viewUpdate","viewDelete","getNotifications","updateNotifications","getNotificationCount","updateNotification","getNotificationDigest","updateNotificationDigest","getNotificationDigestSettings","updateNotificationDigestSettings","getFavourites","addFavourite","updateFavourite","resource","deleteFavourite","getImports","createImport","updateImportSettings","importId","enqueueImport","reports","reportsDetail","ai","createLlmTask","createAiAgent","getAiAgents","getAiAgent","agentId","updateAiAgent","deleteAiAgent","attachAiAgentToResource","detachAiAgentFromResource","agentAttachmentId","getAiAgentRuns","getAiAgentPromptIterations","addAiAgentPromptIteration","deleteAiAgentPromptHistory","vectorSearch","getActions","createAiActions","updateAiAction","actionId","getUserDailyReport","createUserDailyReport","updateUserDailyReport","getUserDailyReportById","reportId","deleteUserDailyReportById"],"sourceRoot":""}