import { J as Json, S as SdkModule } from '../../module-Bq-w9Ws5.js'; import 'graphql-request'; type PswClientStatus = 'ACTIVE' | 'ARCHIVED' | 'INACTIVE' | 'PROSPECT'; type PswClientType = 'INDIVIDUAL' | 'ORGANIZATION'; type PswComplianceStatus = 'FAILED' | 'IN_REVIEW' | 'PASSED' | 'PENDING' | 'WAIVED'; type PswComplianceType = 'CONTINUING_EDUCATION' | 'DATA_RETENTION' | 'ENGAGEMENT_ACCEPTANCE' | 'INDEPENDENCE' | 'LEGAL_HOLD' | 'LICENSING'; type PswConflictCheckStatus = 'CLEAR' | 'CONFLICT' | 'PENDING' | 'POTENTIAL_CONFLICT' | 'WAIVED'; type PswDeliverableStatus = 'ACCEPTED' | 'CLIENT_REVIEW' | 'DRAFT' | 'INTERNAL_REVIEW' | 'REJECTED'; type PswDocumentClassification = 'CONFIDENTIAL' | 'INTERNAL' | 'PRIVILEGED' | 'PUBLIC'; type PswDocumentStatus = 'ARCHIVED' | 'DRAFT' | 'FINAL'; type PswEngagementStatus = 'ACCEPTED' | 'CANCELLED' | 'CLOSED' | 'DELIVERED' | 'INVOICED' | 'IN_PROGRESS' | 'PROPOSAL' | 'REVIEW'; type PswFeeArrangement = 'FIXED' | 'HOURLY' | 'RETAINER' | 'VALUE_BASED'; type PswInvoiceStatus = 'CANCELLED' | 'DRAFT' | 'OVERDUE' | 'PAID' | 'SENT'; type PswMatterPriority = 'CRITICAL' | 'HIGH' | 'LOW' | 'MEDIUM'; type PswMatterStatus = 'ARCHIVED' | 'CLOSED' | 'ON_HOLD' | 'OPEN'; type PswMilestoneStatus = 'CANCELLED' | 'COMPLETED' | 'IN_PROGRESS' | 'PENDING'; type PswTeamRole = 'ASSOCIATE' | 'MANAGER' | 'PARTNER' | 'SPECIALIST' | 'SUPPORT'; type PswTimeEntryStatus = 'APPROVED' | 'BILLED' | 'DRAFT' | 'REJECTED' | 'SUBMITTED'; interface PswFileRef { id: string; } interface PswClient { id: string; name: string; type: PswClientType; status: PswClientStatus; industry?: string | null; contactName?: string | null; contactEmail?: string | null; contactPhone?: string | null; address?: string | null; notes?: string | null; relationshipOwnerId?: string | null; tags: string[]; workspaceId: string; createdAt: string; updatedAt: string; engagements?: PswEngagement[]; matters?: PswMatter[]; } interface PswEngagement { id: string; name: string; clientId: string; description?: string | null; status: PswEngagementStatus; feeArrangement: PswFeeArrangement; feeAmount: number; currency: string; practiceAreaId?: string | null; responsiblePartnerId?: string | null; startDate?: string | null; endDate?: string | null; tags: string[]; workspaceId: string; createdAt: string; updatedAt: string; client?: PswClient | null; deliverables?: PswDeliverable[]; milestones?: PswMilestone[]; } interface PswMatter { id: string; title: string; clientId: string; engagementId?: string | null; description?: string | null; reference?: string | null; status: PswMatterStatus; priority: PswMatterPriority; isPrivileged: boolean; leadPractitionerId?: string | null; practiceAreaId?: string | null; dueDate?: string | null; closedAt?: string | null; tags: string[]; workspaceId: string; createdAt: string; updatedAt: string; client?: PswClient | null; } interface PswInvoice { id: string; number: string; clientId: string; engagementId?: string | null; status: PswInvoiceStatus; currency: string; subtotal: number; taxAmount: number; total: number; issueDate?: string | null; dueDate?: string | null; paidAt?: string | null; lineItems?: Json | null; notes?: string | null; workspaceId: string; createdAt: string; updatedAt: string; } interface PswTimeEntry { id: string; practitionerId: string; date: string; minutes: number; rate: number; billable: boolean; status: PswTimeEntryStatus; narrative?: string | null; engagementId?: string | null; matterId?: string | null; invoiceId?: string | null; workspaceId: string; createdAt: string; updatedAt: string; } interface PswComplianceCheck { id: string; title: string; type: PswComplianceType; status: PswComplianceStatus; subjectId: string; subjectType: string; details?: string | null; reviewerId?: string | null; evidenceFileId?: string | null; dueDate?: string | null; resolvedAt?: string | null; workspaceId: string; createdAt: string; updatedAt: string; } interface PswConflictCheck { id: string; clientId: string; matterId?: string | null; status: PswConflictCheckStatus; searchedParties: string[]; findings?: string | null; waiverReason?: string | null; clearedById?: string | null; resolvedAt?: string | null; workspaceId: string; createdAt: string; updatedAt: string; } interface PswPracticeArea { id: string; name: string; code?: string | null; description?: string | null; isActive: boolean; workspaceId: string; createdAt: string; updatedAt: string; } interface PswDeliverable { id: string; name: string; engagementId: string; description?: string | null; status: PswDeliverableStatus; version: number; acceptanceCriteria?: string | null; dueDate?: string | null; acceptedAt?: string | null; file?: PswFileRef | null; workspaceId: string; createdAt: string; updatedAt: string; } interface PswMilestone { id: string; name: string; engagementId: string; description?: string | null; status: PswMilestoneStatus; triggerAmount: number; triggersInvoice: boolean; dueDate?: string | null; completedAt?: string | null; workspaceId: string; createdAt: string; updatedAt: string; } interface PswDocument { id: string; name: string; classification: PswDocumentClassification; status: PswDocumentStatus; version: number; legalHold: boolean; description?: string | null; engagementId?: string | null; matterId?: string | null; retainUntil?: string | null; file?: PswFileRef | null; tags: string[]; workspaceId: string; createdAt: string; updatedAt: string; } interface PswTeamAssignment { id: string; practitionerId: string; role: PswTeamRole; allocationPct: number; billingRate: number; isLead: boolean; engagementId?: string | null; matterId?: string | null; workspaceId: string; createdAt: string; updatedAt: string; } interface PswPageInfo { cursor?: string | null; hasMore: boolean; } interface PswClientConnection { items: PswClient[]; pageInfo: PswPageInfo; } interface PswEngagementConnection { items: PswEngagement[]; pageInfo: PswPageInfo; } interface PswInvoiceConnection { items: PswInvoice[]; pageInfo: PswPageInfo; } interface PswMatterConnection { items: PswMatter[]; pageInfo: PswPageInfo; } interface PswPaginationInput { cursor?: string; limit?: number; offset?: number; } interface PswCreateClientInput { name: string; type?: PswClientType; status?: PswClientStatus; industry?: string; contactName?: string; contactEmail?: string; contactPhone?: string; address?: string; notes?: string; relationshipOwnerId?: string; tags?: string[]; } interface PswUpdateClientInput { name?: string; type?: PswClientType; status?: PswClientStatus; industry?: string; contactName?: string; contactEmail?: string; contactPhone?: string; address?: string; notes?: string; relationshipOwnerId?: string; tags?: string[]; } interface PswCreateEngagementInput { clientId: string; name: string; description?: string; feeArrangement?: PswFeeArrangement; feeAmount?: number; currency?: string; practiceAreaId?: string; responsiblePartnerId?: string; startDate?: string; endDate?: string; tags?: string[]; } interface PswUpdateEngagementInput { name?: string; description?: string; feeArrangement?: PswFeeArrangement; feeAmount?: number; currency?: string; practiceAreaId?: string; responsiblePartnerId?: string; startDate?: string; endDate?: string; tags?: string[]; } interface PswCreateMatterInput { clientId: string; title: string; description?: string; reference?: string; engagementId?: string; priority?: PswMatterPriority; isPrivileged?: boolean; leadPractitionerId?: string; practiceAreaId?: string; dueDate?: string; tags?: string[]; } interface PswUpdateMatterInput { title?: string; description?: string; engagementId?: string; priority?: PswMatterPriority; isPrivileged?: boolean; leadPractitionerId?: string; practiceAreaId?: string; dueDate?: string; tags?: string[]; } interface PswCreateInvoiceInput { clientId: string; number: string; engagementId?: string; currency?: string; subtotal?: number; taxAmount?: number; total?: number; issueDate?: string; dueDate?: string; lineItems?: Json; notes?: string; } interface PswCreateTimeEntryInput { date: string; minutes: number; billable?: boolean; rate?: number; narrative?: string; engagementId?: string; matterId?: string; } interface PswClientsApi { get(id: string): Promise; list(pagination?: PswPaginationInput, status?: PswClientStatus): Promise; create(input: PswCreateClientInput): Promise; update(id: string, input: PswUpdateClientInput): Promise; archive(id: string): Promise; } interface PswEngagementsApi { get(id: string): Promise; list(clientId?: string, pagination?: PswPaginationInput, status?: PswEngagementStatus): Promise; create(input: PswCreateEngagementInput): Promise; update(id: string, input: PswUpdateEngagementInput): Promise; transition(id: string, status: PswEngagementStatus): Promise; } interface PswMattersApi { get(id: string): Promise; list(clientId?: string, engagementId?: string, pagination?: PswPaginationInput, status?: PswMatterStatus): Promise; create(input: PswCreateMatterInput): Promise; update(id: string, input: PswUpdateMatterInput): Promise; close(id: string): Promise; } interface PswInvoicesApi { list(clientId?: string, pagination?: PswPaginationInput, status?: PswInvoiceStatus): Promise; create(input: PswCreateInvoiceInput): Promise; markPaid(id: string): Promise; } interface PswTimeEntriesApi { log(input: PswCreateTimeEntryInput): Promise; } interface PswComplianceApi { listChecks(opts?: { status?: PswComplianceStatus; subjectId?: string; subjectType?: string; pagination?: PswPaginationInput; }): Promise; } interface PswConflictsApi { listChecks(clientId?: string, pagination?: PswPaginationInput): Promise; } interface PswPracticeAreasApi { list(pagination?: PswPaginationInput): Promise; } interface PswSystemApi { health(): Promise; } interface ProserviceworldApi { clients: PswClientsApi; engagements: PswEngagementsApi; matters: PswMattersApi; invoices: PswInvoicesApi; timeEntries: PswTimeEntriesApi; compliance: PswComplianceApi; conflicts: PswConflictsApi; practiceAreas: PswPracticeAreasApi; system: PswSystemApi; } declare const proserviceworldModule: SdkModule; export { type ProserviceworldApi, type PswClient, type PswClientConnection, type PswClientStatus, type PswClientType, type PswClientsApi, type PswComplianceApi, type PswComplianceCheck, type PswComplianceStatus, type PswComplianceType, type PswConflictCheck, type PswConflictCheckStatus, type PswConflictsApi, type PswCreateClientInput, type PswCreateEngagementInput, type PswCreateInvoiceInput, type PswCreateMatterInput, type PswCreateTimeEntryInput, type PswDeliverable, type PswDeliverableStatus, type PswDocument, type PswDocumentClassification, type PswDocumentStatus, type PswEngagement, type PswEngagementConnection, type PswEngagementStatus, type PswEngagementsApi, type PswFeeArrangement, type PswFileRef, type PswInvoice, type PswInvoiceConnection, type PswInvoiceStatus, type PswInvoicesApi, type PswMatter, type PswMatterConnection, type PswMatterPriority, type PswMatterStatus, type PswMattersApi, type PswMilestone, type PswMilestoneStatus, type PswPageInfo, type PswPaginationInput, type PswPracticeArea, type PswPracticeAreasApi, type PswSystemApi, type PswTeamAssignment, type PswTeamRole, type PswTimeEntriesApi, type PswTimeEntry, type PswTimeEntryStatus, type PswUpdateClientInput, type PswUpdateEngagementInput, type PswUpdateMatterInput, proserviceworldModule as default };