Collections
Types
Types
AccountType
type AccountType = "checking" | "savings" | "cash" | "creditCard" | "lineOfCredit" | "otherAsset" | "otherLiability" | "mortgage" | "autoLoan" | "studentLoan" | "personalLoan" | "medicalDebt" | "otherDebt"
TransactionClearedStatus
type TransactionClearedStatus = "cleared" | "uncleared" | "reconciled"
TransactionFlagColor
type TransactionFlagColor = "" | "red" | "orange" | "yellow" | "green" | "blue" | "purple" | null
TransactionFlagName
type TransactionFlagName = string | null
ScheduledTransactionFrequency
type ScheduledTransactionFrequency = "never" | "daily" | "weekly" | "everyOtherWeek" | "twiceAMonth" | "every4Weeks" | "monthly" | "everyOtherMonth" | "every3Months" | "every4Months" | "twiceAYear" | "yearly" | "everyOtherYear"
LoanAccountPeriodicValue
type LoanAccountPeriodicValue = { [key: string]: number; } | null
Account
type Account = { id: string; name: string; type: AccountType; on_budget: boolean; closed: boolean; note?: string | null; balance: number; cleared_balance: number; uncleared_balance: number; transfer_payee_id: string | null; direct_import_linked?: boolean; direct_import_in_error?: boolean; last_reconciled_at?: string | null; debt_original_balance?: number | null; debt_interest_rates?: LoanAccountPeriodicValue; debt_minimum_payments?: LoanAccountPeriodicValue; debt_escrow_amounts?: LoanAccountPeriodicValue; deleted: boolean; }
Category
type Category = { id: string; category_group_id: string; category_group_name?: string; name: string; hidden: boolean; original_category_group_id?: string | null; note?: string | null; budgeted: number; activity: number; balance: number; goal_type?: "TB" | "TBD" | "MF" | "NEED" | "DEBT" | null; goal_needs_whole_amount?: boolean | null; goal_day?: number | null; goal_cadence?: number | null; goal_cadence_frequency?: number | null; goal_creation_month?: string | null; goal_target?: number | null; goal_target_month?: string | null; goal_percentage_complete?: number | null; goal_months_to_budget?: number | null; goal_under_funded?: number | null; goal_overall_funded?: number | null; goal_overall_left?: number | null; goal_snoozed_at?: string | null; deleted: boolean; }
TransactionSummary
type TransactionSummary = { id: string; date: string; amount: number; memo?: string | null; cleared: TransactionClearedStatus; approved: boolean; flag_color?: TransactionFlagColor; flag_name?: TransactionFlagName; account_id: string; payee_id?: string | null; category_id?: string | null; transfer_account_id?: string | null; transfer_transaction_id?: string | null; matched_transaction_id?: string | null; import_id?: string | null; import_payee_name?: string | null; import_payee_name_original?: string | null; debt_transaction_type?: "payment" | "refund" | "fee" | "interest" | "escrow" | "balanceAdjustment" | "credit" | "charge" | null; deleted: boolean; }
SubTransaction
type SubTransaction = { id: string; transaction_id: string; amount: number; memo?: string | null; payee_id?: string | null; payee_name?: string | null; category_id?: string | null; category_name?: string | null; transfer_account_id?: string | null; transfer_transaction_id?: string | null; deleted: boolean; }
TransactionDetail
type TransactionDetail = TransactionSummary & { account_name: string; payee_name?: string | null; category_name?: string | null; subtransactions: Array<SubTransaction>; }
ScheduledTransactionSummary
type ScheduledTransactionSummary = { id: string; date_first: string; date_next: string; frequency: ScheduledTransactionFrequency; amount: number; memo?: string | null; flag_color?: TransactionFlagColor; flag_name?: TransactionFlagName; account_id: string; payee_id?: string | null; category_id?: string | null; transfer_account_id?: string | null; deleted: boolean; }
ScheduledSubTransaction
type ScheduledSubTransaction = { id: string; scheduled_transaction_id: string; amount: number; memo?: string | null; payee_id?: string | null; payee_name?: string | null; category_id?: string | null; category_name?: string | null; transfer_account_id?: string | null; deleted: boolean; }
ScheduledTransactionDetail
type ScheduledTransactionDetail = ScheduledTransactionSummary & { account_name: string; payee_name?: string | null; category_name?: string | null; subtransactions: Array<ScheduledSubTransaction>; }
ProcessStatus
Process & Workflow Type Definitions
Provides comprehensive type safety for the process visualization system that supports flowchart rendering, workflow documentation, and process management.
type ProcessStatus = "draft" | "active" | "archived" | "deprecated"
ProcessCategory
Category/domain that a process belongs to
type ProcessCategory = "operations" | "engineering" | "hr" | "finance" | "sales" | "marketing" | "support" | "legal" | "compliance" | "other"
ProcessStepType
Type of step in a process flowchart
type ProcessStepType = "start" | "end" | "action" | "decision" | "subprocess" | "wait" | "parallel" | "merge"
DiscussionEntityType
Discussion Feature Type Definitions
Provides comprehensive type safety for the discussion system that supports polymorphic relationships with Projects, Milestones, Tasks, and future entities.
type DiscussionEntityType = string
AttachmentStatus
File attachment status states
type AttachmentStatus = "pending" | "uploaded" | "failed"
ActivityEntityType
Entity types that can have activities recorded.
type ActivityEntityType = "team" | "project" | "product" | "goal" | "initiative" | "productProject"
ActivityAction
Actions that can be recorded as activities.
type ActivityAction = "created" | "updated" | "deleted" | "linked" | "unlinked" | "status_changed" | "phase_changed" | "assigned" | "unassigned" | "role_changed" | "commented"
GoalMetricType
Type representing the metric measurement type
- percentage: Values measured as percentages (0-100)
- currency: Monetary values in any currency unit
- count: Discrete numeric counts
- custom: User-defined metric types
type GoalMetricType = "custom" | "percentage" | "currency" | "count"
GoalMetricTrend
Type representing the trend direction of a metric
- up: Value is increasing
- down: Value is decreasing
- stable: Value is relatively unchanged
type GoalMetricTrend = "up" | "down" | "stable"
GoalStatus
Goal status values
- Not Started: Goal work has not begun
- In Progress: Goal is actively being worked on
- At Risk: Goal may not be completed on time
- On Track: Goal is progressing as expected
- Complete: Goal has been achieved
type GoalStatus = "Not Started" | "In Progress" | "At Risk" | "On Track" | "Complete"
GoalProgressMode
Goal progress mode
- auto: Progress is calculated automatically from linked metrics or child goals
- manual: Progress is set manually by the user
type GoalProgressMode = "auto" | "manual"
GoalCategory
Goal category for classification
- Revenue: Financial growth targets
- Growth: User/market expansion targets
- Quality: Quality improvement targets
- Efficiency: Operational efficiency targets
- Custom: User-defined category
type GoalCategory = "Revenue" | "Growth" | "Quality" | "Efficiency" | "Custom"
InitiativeStatusType
type InitiativeStatusType = "In Progress" | "Backlog" | "Planned" | "Done"
InitiativePriorityType
type InitiativePriorityType = "High" | "Medium" | "Low"
ProcessStatus
Process status values
type ProcessStatus = "draft" | "active" | "archived" | "deprecated"
ProcessTriggerType
Process trigger types
type ProcessTriggerType = "manual" | "scheduled" | "event" | "entity" | "webhook" | "api"
TriggerEntityType
FlowState entity types that can trigger processes
type TriggerEntityType = "project" | "milestone" | "task" | "goal" | "document" | "approval" | "discussion" | "session" | "opportunity" | "contact" | "client" | "process" | "processexecution"
TriggerConditionOperator
Comparison operators for trigger conditions
type TriggerConditionOperator = "equals" | "not-equals" | "changes-to" | "changes-from" | "exists" | "not-exists" | "contains" | "gt" | "gte" | "lt" | "lte" | "in" | "not-in" | "regex"
ProcessCategory
Process category types for organization
type ProcessCategory = "custom" | "software-development" | "project-management" | "devops" | "data-pipeline" | "business-process" | "approval-workflow"
QueueBehavior
Queue behavior when max concurrent executions reached
type QueueBehavior = "wait" | "reject" | "replace-oldest"
ProcessExecutionStatus
Process execution status
type ProcessExecutionStatus = "pending" | "failed" | "paused" | "running" | "completed" | "cancelled" | "timed-out"
ProcessStepType
Step type enumeration
type ProcessStepType = "start" | "end" | "action" | "decision" | "subprocess" | "approval" | "script" | "notification" | "parallel-gateway" | "join-gateway" | "delay" | "api-call" | "human-task" | "agent-task"
ProcessStepStatus
Step execution status
type ProcessStepStatus = "pending" | "failed" | "active" | "completed" | "skipped"
SubprocessFailureStrategy
Subprocess failure handling strategy
type SubprocessFailureStrategy = "fail-parent" | "continue" | "retry"
ProductType
Product Type Enum
Defines the category of product being managed. Phase 1: Only 'software' is fully functional.
type ProductType = "custom" | "software" | "physical" | "service" | "content"
ProductPhase
Product Lifecycle Phase
Represents the current stage in a product's lifecycle from ideation to end-of-life.
type ProductPhase = "growth" | "design" | "development" | "concept" | "discovery" | "beta" | "launch" | "sunset"
KpiTrend
KPI Trend Direction
Indicates the directional movement of a key performance indicator.
type KpiTrend = "up" | "down" | "stable"
ProductProjectRole
Role type for product-project relationships.
- primary: This is the main project implementing the product
- supporting: Project provides supporting functionality
- related: Project is loosely related to the product
type ProductProjectRole = "primary" | "supporting" | "related"
ProductTeamMemberRole
Role type for product-team member relationships.
- lead: Team lead for this product
- member: Regular team member
- advisor: Advisory/consulting role
- observer: View-only access
type ProductTeamMemberRole = "lead" | "member" | "advisor" | "observer"
TerminalConnectionStatus
Terminal connection status
type TerminalConnectionStatus = "connected" | "disconnected" | "reconnecting"
ShellType
Shell type identifier
type ShellType = "bash" | "zsh" | "fish" | "powershell" | "cmd" | "sh"
SessionScopeEntityType
Entity type for session scoping
type SessionScopeEntityType = "project" | "milestone" | "task" | "workspace" | "codebase"
TeamMemberRole
Team member role within a product.
type TeamMemberRole = "owner" | "manager" | "contributor" | "viewer"
RaciType
RACI responsibility type.
- R: Responsible - Does the work
- A: Accountable - Ultimate decision authority
- C: Consulted - Provides input
- I: Informed - Kept in the loop
type RaciType = "R" | "A" | "C" | "I"
TemplateCategory
Template categories for project templates
type TemplateCategory = "other" | "software-development" | "project-management" | "product-management" | "personal" | "business"
DocumentSchema
type DocumentSchema = { id: string; workspaceId: string; codebaseId?: string | undefined; s3Key?: string | undefined; s3Bucket?: string | undefined; filename?: string | undefined; mimeType?: string | undefined; sizeBytes?: number | undefined; hash?: string | undefined; uploadedAt?: string | undefined; lastModified?: string | undefined; indexedAt?: string | undefined; ragStatus?: "pending" | "failed" | "processing" | "indexed" | undefined; ragError?: string | undefined; ragChunkCount?: number | undefined; metadata?: z.objectOutputType<{ git: z.ZodOptional<z.ZodObject<{ codebaseId: z.ZodString; repoPath: z.ZodString; commitHash: z.ZodString; branch: z.ZodString; author: z.ZodString; committedAt: z.ZodString; }, "strip", z.ZodTypeAny, { codebaseId: string; repoPath: string; commitHash: string; branch: string; author: string; committedAt: string; }, { codebaseId: string; repoPath: string; commitHash: string; branch: string; author: string; committedAt: string; }>>; type: z.ZodOptional<z.ZodEnum<["code", "markdown", "plan", "config", "other"]>>; language: z.ZodOptional<z.ZodString>; tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>; wordCount: z.ZodOptional<z.ZodNumber>; lineCount: z.ZodOptional<z.ZodNumber>; }, z.ZodTypeAny, "passthrough"> | undefined; _deleted?: boolean | undefined; _rev?: string | undefined; }
MangoSelector
Type helper for MangoQuery selector
type MangoSelector = { [x: string]: any; }
MangoSort
Type helper for MangoQuery sort
type MangoSort = Record<string, "asc" | "desc">[]