export type ComposerSendBlocker = | "upload" | "repository" | "policy" | "personal_decision" | "machine_permission" | "personal_loading"; export function getComposerSendBlocker(input: { uploadPending: boolean; repositoryError: string | null; policyValid: boolean; personalDecision: boolean; personalLoading: boolean; machineAccessDenied?: boolean | undefined; }): ComposerSendBlocker | null { if (input.uploadPending) return "upload"; if (input.repositoryError !== null) return "repository"; if (!input.policyValid) return "policy"; if (input.machineAccessDenied) return "machine_permission"; if (input.personalDecision) return "personal_decision"; if (input.personalLoading) return "personal_loading"; return null; }