/**
 * Todoist Node - Version 2.1
 * Discriminator: resource=task, operation=move
 */


interface Credentials {
  todoistApi: CredentialReference;
  todoistOAuth2Api: CredentialReference;
}

/** Task resource */
export type TodoistV21TaskMoveParams = {
  resource: 'task';
  operation: 'move';
  authentication?: 'apiKey' | 'oAuth2' | Expression<string>;
/**
 * Task ID
 */
    taskId?: string | Expression<string> | PlaceholderValue;
/**
 * The destination project. Choose from the list, or specify an ID.
 * @default {"mode":"list","value":""}
 */
    project?: { __rl: true; mode: 'list' | 'id'; value: string; cachedResultName?: string };
/**
 * Additional Fields
 * @default {}
 */
    options?: {
    /** The destination section. The task becomes the last root task of the section. Choose from the list, or specify an ID using an &lt;a href="https://docs.n8n.io/code/expressions/"&gt;expression&lt;/a&gt;.
     */
    section?: string | Expression<string>;
    /** The destination parent task. The task becomes the last child task of the parent task. Choose from the list, or specify an ID using an &lt;a href="https://docs.n8n.io/code/expressions/"&gt;expression&lt;/a&gt;.
     */
    parent?: string | Expression<string>;
  };
};

export type TodoistV21TaskMoveOutput = {
  success?: boolean;
};

export type TodoistV21TaskMoveNode = {
  type: 'n8n-nodes-base.todoist';
  version: 2.1;
  credentials?: Credentials;
  config: NodeConfig<TodoistV21TaskMoveParams>;
  output?: Items<TodoistV21TaskMoveOutput>;
};