focalboard/import/asana/asana.ts
2021-02-17 15:55:59 -08:00

129 lines
2.9 KiB
TypeScript

// Copyright (c) 2015-present Mattermost, Inc. All Rights Reserved.
// See LICENSE.txt for license information.
// Generated by https://quicktype.io
//
// To change quicktype's target language, run command:
//
// "Set quicktype target language"
export interface Asana {
data: Datum[];
}
export interface Datum {
gid: string;
assignee: null;
assignee_status: AssigneeStatus;
completed: boolean;
completed_at: null;
created_at: string;
custom_fields: CustomField[];
due_at: null;
due_on: null;
followers: Workspace[];
hearted: boolean;
hearts: any[];
liked: boolean;
likes: any[];
memberships: Membership[];
modified_at: string;
name: string;
notes: string;
num_hearts: number;
num_likes: number;
parent: Workspace | null;
permalink_url: string;
projects: Workspace[];
resource_type: WorkspaceResourceType;
start_on: null;
subtasks: Datum[];
tags: any[];
resource_subtype: ResourceSubtype;
workspace: Workspace;
}
export enum AssigneeStatus {
Upcoming = "upcoming",
}
export interface CustomField {
gid: string;
enabled: boolean;
enum_options: Enum[];
enum_value: Enum | null;
name: CustomFieldName;
created_by: null;
resource_subtype: Type;
resource_type: CustomFieldResourceType;
type: Type;
}
export interface Enum {
gid: string;
color: Color;
enabled: boolean;
name: EnumOptionName;
resource_type: EnumOptionResourceType;
}
export enum Color {
Blue = "blue",
BlueGreen = "blue-green",
CoolGray = "cool-gray",
Orange = "orange",
Red = "red",
Yellow = "yellow",
YellowOrange = "yellow-orange",
}
export enum EnumOptionName {
Deferred = "Deferred",
Done = "Done",
High = "High",
InProgress = "In Progress",
Low = "Low",
Medium = "Medium",
NotStarted = "Not Started",
Waiting = "Waiting",
}
export enum EnumOptionResourceType {
EnumOption = "enum_option",
}
export enum CustomFieldName {
Priority = "Priority",
TaskProgress = "Task Progress",
}
export enum Type {
Enum = "enum",
}
export enum CustomFieldResourceType {
CustomField = "custom_field",
}
export interface Workspace {
gid: string;
name: string;
resource_type: WorkspaceResourceType;
}
export enum WorkspaceResourceType {
Project = "project",
Section = "section",
Task = "task",
User = "user",
Workspace = "workspace",
}
export interface Membership {
project: Workspace;
section: Workspace;
}
export enum ResourceSubtype {
DefaultTask = "default_task",
}