first commit
This commit is contained in:
commit
0a45a1f5fb
20 changed files with 992 additions and 0 deletions
241
f/types/clickup.deno.ts
Normal file
241
f/types/clickup.deno.ts
Normal file
|
@ -0,0 +1,241 @@
|
|||
// types/clickup.d.ts
|
||||
|
||||
/**
|
||||
* Base Task Interface - Shared mutable fields across operations
|
||||
* Contains all fields that can be SENT in create/update requests
|
||||
* and RECEIVED in responses (excluding read-only metadata)
|
||||
*/
|
||||
interface TaskBase {
|
||||
// Core Content
|
||||
name: string;
|
||||
description?: string;
|
||||
text_content?: string;
|
||||
|
||||
// Status & Priority
|
||||
status?: string;
|
||||
priority?: 1 | 2 | 3 | 4;
|
||||
|
||||
// Time Management
|
||||
due_date?: number | null;
|
||||
start_date?: number | null;
|
||||
time_estimate?: number | null;
|
||||
time_spent?: number | null;
|
||||
|
||||
// People & Assignments
|
||||
assignees?: number[];
|
||||
tags?: string[];
|
||||
custom_fields?: Array<{
|
||||
id: string;
|
||||
value: any;
|
||||
}>;
|
||||
|
||||
// Task Relationships
|
||||
parent?: string | null;
|
||||
links_to?: string;
|
||||
|
||||
// Advanced Features
|
||||
markdown_description?: string;
|
||||
notify_all?: boolean;
|
||||
check_required_custom_fields?: boolean;
|
||||
custom_item_id?: number | null;
|
||||
source?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Task Creation Parameters
|
||||
* @see https://developer.clickup.com/reference/createtask
|
||||
*/
|
||||
interface TaskCreate extends TaskBase {
|
||||
/** Required Fields */
|
||||
list_id: string;
|
||||
name: string;
|
||||
|
||||
/** Creation-Specific Fields */
|
||||
custom_task_id?: string;
|
||||
team_id?: number;
|
||||
}
|
||||
|
||||
/**
|
||||
* Task Update Parameters
|
||||
* @see https://developer.clickup.com/reference/updatetask
|
||||
*/
|
||||
interface TaskUpdate extends Partial<TaskBase> {
|
||||
/** Required Identifier */
|
||||
id: string;
|
||||
|
||||
/** Update-Specific Fields */
|
||||
task_revision?: number;
|
||||
task_template_id?: string;
|
||||
idempotency_key?: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Full Task Response
|
||||
* @see https://developer.clickup.com/reference/gettask
|
||||
*/
|
||||
interface TaskResponse extends TaskBase {
|
||||
/** Read-Only Metadata */
|
||||
id: string;
|
||||
url: string;
|
||||
orderindex: string;
|
||||
date_created: string;
|
||||
date_updated: string;
|
||||
date_closed?: string | null;
|
||||
date_done?: string | null;
|
||||
archived: boolean;
|
||||
|
||||
/** System Relationships */
|
||||
list: {
|
||||
id: string;
|
||||
name: string;
|
||||
access: boolean;
|
||||
};
|
||||
space: {
|
||||
id: string;
|
||||
name: string;
|
||||
};
|
||||
folder: {
|
||||
id: string;
|
||||
name: string;
|
||||
hidden: boolean;
|
||||
access: boolean;
|
||||
};
|
||||
|
||||
/** People & Permissions */
|
||||
creator: User;
|
||||
watchers: User[];
|
||||
followers: User[];
|
||||
permission_level: string;
|
||||
shared: SharedAccess[];
|
||||
|
||||
/** Complex Structures */
|
||||
checklists: Checklist[];
|
||||
dependencies: Dependency[];
|
||||
linked_tasks: LinkedTask[];
|
||||
subtasks: TaskResponse[];
|
||||
attachments: Attachment[];
|
||||
|
||||
/** Status Details */
|
||||
status: {
|
||||
status: string;
|
||||
color: string;
|
||||
orderindex: number;
|
||||
type: 'open' | 'closed' | 'custom';
|
||||
};
|
||||
|
||||
/** Priority Details */
|
||||
priority: {
|
||||
id: string;
|
||||
priority: 'urgent' | 'high' | 'normal' | 'low';
|
||||
color: string;
|
||||
} | null;
|
||||
}
|
||||
|
||||
// Supporting Interfaces
|
||||
interface User {
|
||||
id: number;
|
||||
username: string;
|
||||
email: string;
|
||||
color: string;
|
||||
initials: string;
|
||||
profilePicture?: string;
|
||||
}
|
||||
|
||||
interface Checklist {
|
||||
id: string;
|
||||
name: string;
|
||||
orderindex: number;
|
||||
resolved: number;
|
||||
unresolved: number;
|
||||
items: ChecklistItem[];
|
||||
}
|
||||
|
||||
interface ChecklistItem {
|
||||
id: string;
|
||||
name: string;
|
||||
orderindex: number;
|
||||
assignee?: number;
|
||||
resolved: boolean;
|
||||
parent?: string;
|
||||
date_created: string;
|
||||
children?: string[];
|
||||
}
|
||||
|
||||
interface Tag {
|
||||
name: string;
|
||||
tag_fg: string;
|
||||
tag_bg: string;
|
||||
creator?: number;
|
||||
}
|
||||
|
||||
interface Dependency {
|
||||
task_id: string;
|
||||
depends_on: string;
|
||||
type: number;
|
||||
date_created: string;
|
||||
userid: string;
|
||||
}
|
||||
|
||||
interface LinkedTask {
|
||||
task_id: string;
|
||||
link_id: string;
|
||||
date_created: string;
|
||||
userid: string;
|
||||
}
|
||||
|
||||
interface CustomField {
|
||||
id: string;
|
||||
name: string;
|
||||
type: string;
|
||||
type_config: {
|
||||
[key: string]: any;
|
||||
options?: Array<{
|
||||
id: string;
|
||||
name: string;
|
||||
color?: string;
|
||||
orderindex?: number;
|
||||
}>;
|
||||
};
|
||||
value: any;
|
||||
}
|
||||
|
||||
interface Attachment {
|
||||
id: string;
|
||||
version: string;
|
||||
date: string;
|
||||
title: string;
|
||||
extension: string;
|
||||
thumbnail_small: string;
|
||||
thumbnail_large: string;
|
||||
size: number;
|
||||
}
|
||||
|
||||
interface SharedAccess {
|
||||
id: string;
|
||||
name: string;
|
||||
type: string;
|
||||
access_level: string;
|
||||
team_id: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* Full task hierarchy types
|
||||
* Ref: https://developer.clickup.com/docs
|
||||
*/
|
||||
interface ClickUpHierarchy {
|
||||
workspace_id: string;
|
||||
space_id: string;
|
||||
folder_id?: string;
|
||||
list_id: string;
|
||||
task_id: string;
|
||||
}
|
||||
|
||||
/**
|
||||
* API error response format
|
||||
* Ref: https://developer.clickup.com/docs/errors
|
||||
*/
|
||||
interface ClickUpError {
|
||||
err: string;
|
||||
code: number;
|
||||
message?: string;
|
||||
}
|
16
f/types/clickup.script.yaml
Normal file
16
f/types/clickup.script.yaml
Normal file
|
@ -0,0 +1,16 @@
|
|||
summary: clickup
|
||||
description: ''
|
||||
lock: ''
|
||||
concurrency_time_window_s: 0
|
||||
kind: script
|
||||
no_main_func: true
|
||||
schema:
|
||||
$schema: 'https://json-schema.org/draft/2020-12/schema'
|
||||
type: object
|
||||
order:
|
||||
- a
|
||||
- b
|
||||
- d
|
||||
- e
|
||||
properties: {}
|
||||
required: []
|
6
f/types/folder.meta.yaml
Normal file
6
f/types/folder.meta.yaml
Normal file
|
@ -0,0 +1,6 @@
|
|||
summary: null
|
||||
display_name: types
|
||||
extra_perms:
|
||||
u/peter: true
|
||||
owners:
|
||||
- u/peter
|
Loading…
Add table
Add a link
Reference in a new issue