Files
n8n/packages/nodes-base/nodes/Clockify/ProjectInterfaces.ts
alighasami 3d5eaf9445
Some checks failed
Security: Sync from Public / sync-from-public (push) Has been cancelled
Test: Benchmark Nightly / build (push) Has been cancelled
Test: Benchmark Nightly / Notify Cats on failure (push) Has been cancelled
CI: Python / Checks (push) Has been cancelled
Test: Evals Python / Workflow Comparison Python (push) Has been cancelled
Util: Check Docs URLs / check-docs-urls (push) Has been cancelled
Test: Visual Storybook / Cloudflare Pages (push) Has been cancelled
Test: E2E Performance / build-and-test-performance (push) Has been cancelled
Test: Workflows Nightly / Run Workflow Tests (push) Has been cancelled
Util: Cleanup CI Docker Images / Delete stale CI images (push) Has been cancelled
Test: Benchmark Destroy Env / build (push) Has been cancelled
Util: Update Node Popularity / update-popularity (push) Has been cancelled
Test: E2E Coverage Weekly / Coverage Tests (push) Has been cancelled
first commit
2026-03-17 16:22:57 +03:30

61 lines
1.2 KiB
TypeScript

import type { IHourlyRateDto, IMembershipDto } from './CommonDtos';
const Estimates = {
AUTO: 'AUTO',
MANUAL: 'MANUAL',
} as const;
type EstimateEnum = (typeof Estimates)[keyof typeof Estimates];
interface IEstimateDto {
estimate: string;
type: EstimateEnum;
}
export interface IProjectDto {
archived: boolean;
billable: boolean;
clientId: string;
clientName: string | undefined;
color: string;
duration: string | undefined;
estimate: IEstimateDto | undefined;
hourlyRate: IHourlyRateDto | undefined;
id: string;
memberships: IMembershipDto[] | undefined;
name: string;
isPublic: boolean;
workspaceId: string;
note: string | undefined;
}
export interface IProjectRequest {
name: string;
clientId: string;
isPublic: boolean;
estimate: IEstimateDto;
color: string;
note: string;
billable: boolean;
hourlyRate: IHourlyRateDto;
memberships: IMembershipDto;
tasks: ITaskDto;
}
const TaskStatuses = {
ACTIVE: 'ACTIVE',
DONE: 'DONE',
} as const;
type TaskStatusEnum = (typeof TaskStatuses)[keyof typeof TaskStatuses];
export interface ITaskDto {
assigneeIds: object;
estimate: string;
id: string;
name: string;
projectId: string;
status: TaskStatusEnum;
'is-active': boolean;
}