// This file is auto-generated by @hey-api/openapi-ts import type { Client, Options as ClientOptions, TDataShape } from "./client"; import { client as _heyApiClient } from "./client.gen"; import type { CreateBoardData, CreateBoardErrors, CreateBoardResponses, CreateDealData, CreateDealErrors, CreateDealResponses, CreateProjectData, CreateProjectErrors, CreateProjectResponses, CreateStatusData, CreateStatusErrors, CreateStatusResponses, DeleteBoardData, DeleteBoardErrors, DeleteBoardResponses, DeleteDealData, DeleteDealErrors, DeleteDealResponses, DeleteProjectData, DeleteProjectErrors, DeleteProjectResponses, DeleteStatusData, DeleteStatusErrors, DeleteStatusResponses, GetBoardsData, GetBoardsErrors, GetBoardsResponses, GetDealsData, GetDealsErrors, GetDealsResponses, GetProjectsData, GetProjectsResponses, GetStatusesData, GetStatusesErrors, GetStatusesResponses, UpdateBoardData, UpdateBoardErrors, UpdateBoardResponses, UpdateDealData, UpdateDealErrors, UpdateDealResponses, UpdateProjectData, UpdateProjectErrors, UpdateProjectResponses, UpdateStatusData, UpdateStatusErrors, UpdateStatusResponses, } from "./types.gen"; import { zCreateBoardData, zCreateBoardResponse2, zCreateDealData, zCreateDealResponse2, zCreateProjectData, zCreateProjectResponse2, zCreateStatusData, zCreateStatusResponse2, zDeleteBoardData, zDeleteBoardResponse2, zDeleteDealData, zDeleteDealResponse2, zDeleteProjectData, zDeleteProjectResponse2, zDeleteStatusData, zDeleteStatusResponse2, zGetBoardsData, zGetBoardsResponse2, zGetDealsData, zGetDealsResponse2, zGetProjectsData, zGetProjectsResponse2, zGetStatusesData, zGetStatusesResponse2, zUpdateBoardData, zUpdateBoardResponse2, zUpdateDealData, zUpdateDealResponse2, zUpdateProjectData, zUpdateProjectResponse2, zUpdateStatusData, zUpdateStatusResponse2, } from "./zod.gen"; export type Options< TData extends TDataShape = TDataShape, ThrowOnError extends boolean = boolean, > = ClientOptions & { /** * You can provide a client instance returned by `createClient()` instead of * individual options. This might be also useful if you want to implement a * custom client. */ client?: Client; /** * You can pass arbitrary values through the `meta` object. This can be * used to access values that aren't defined as part of the SDK function. */ meta?: Record; }; /** * Get Boards */ export const getBoards = ( options: Options ) => { return (options.client ?? _heyApiClient).get< GetBoardsResponses, GetBoardsErrors, ThrowOnError >({ requestValidator: async data => { return await zGetBoardsData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zGetBoardsResponse2.parseAsync(data); }, url: "/board/{projectId}", ...options, }); }; /** * Create Board */ export const createBoard = ( options: Options ) => { return (options.client ?? _heyApiClient).post< CreateBoardResponses, CreateBoardErrors, ThrowOnError >({ requestValidator: async data => { return await zCreateBoardData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zCreateBoardResponse2.parseAsync(data); }, url: "/board/", ...options, headers: { "Content-Type": "application/json", ...options.headers, }, }); }; /** * Delete Board */ export const deleteBoard = ( options: Options ) => { return (options.client ?? _heyApiClient).delete< DeleteBoardResponses, DeleteBoardErrors, ThrowOnError >({ requestValidator: async data => { return await zDeleteBoardData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zDeleteBoardResponse2.parseAsync(data); }, url: "/board/{pk}", ...options, }); }; /** * Update Board */ export const updateBoard = ( options: Options ) => { return (options.client ?? _heyApiClient).patch< UpdateBoardResponses, UpdateBoardErrors, ThrowOnError >({ requestValidator: async data => { return await zUpdateBoardData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zUpdateBoardResponse2.parseAsync(data); }, url: "/board/{pk}", ...options, headers: { "Content-Type": "application/json", ...options.headers, }, }); }; /** * Get Deals */ export const getDeals = ( options: Options ) => { return (options.client ?? _heyApiClient).get< GetDealsResponses, GetDealsErrors, ThrowOnError >({ requestValidator: async data => { return await zGetDealsData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zGetDealsResponse2.parseAsync(data); }, url: "/deal/{boardId}", ...options, }); }; /** * Create Deal */ export const createDeal = ( options: Options ) => { return (options.client ?? _heyApiClient).post< CreateDealResponses, CreateDealErrors, ThrowOnError >({ requestValidator: async data => { return await zCreateDealData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zCreateDealResponse2.parseAsync(data); }, url: "/deal/", ...options, headers: { "Content-Type": "application/json", ...options.headers, }, }); }; /** * Delete Deal */ export const deleteDeal = ( options: Options ) => { return (options.client ?? _heyApiClient).delete< DeleteDealResponses, DeleteDealErrors, ThrowOnError >({ requestValidator: async data => { return await zDeleteDealData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zDeleteDealResponse2.parseAsync(data); }, url: "/deal/{pk}", ...options, }); }; /** * Update Deal */ export const updateDeal = ( options: Options ) => { return (options.client ?? _heyApiClient).patch< UpdateDealResponses, UpdateDealErrors, ThrowOnError >({ requestValidator: async data => { return await zUpdateDealData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zUpdateDealResponse2.parseAsync(data); }, url: "/deal/{pk}", ...options, headers: { "Content-Type": "application/json", ...options.headers, }, }); }; /** * Get Projects */ export const getProjects = ( options?: Options ) => { return (options?.client ?? _heyApiClient).get< GetProjectsResponses, unknown, ThrowOnError >({ requestValidator: async data => { return await zGetProjectsData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zGetProjectsResponse2.parseAsync(data); }, url: "/project/", ...options, }); }; /** * Create Project */ export const createProject = ( options: Options ) => { return (options.client ?? _heyApiClient).post< CreateProjectResponses, CreateProjectErrors, ThrowOnError >({ requestValidator: async data => { return await zCreateProjectData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zCreateProjectResponse2.parseAsync(data); }, url: "/project/", ...options, headers: { "Content-Type": "application/json", ...options.headers, }, }); }; /** * Delete Project */ export const deleteProject = ( options: Options ) => { return (options.client ?? _heyApiClient).delete< DeleteProjectResponses, DeleteProjectErrors, ThrowOnError >({ requestValidator: async data => { return await zDeleteProjectData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zDeleteProjectResponse2.parseAsync(data); }, url: "/project/{pk}", ...options, }); }; /** * Update Project */ export const updateProject = ( options: Options ) => { return (options.client ?? _heyApiClient).patch< UpdateProjectResponses, UpdateProjectErrors, ThrowOnError >({ requestValidator: async data => { return await zUpdateProjectData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zUpdateProjectResponse2.parseAsync(data); }, url: "/project/{pk}", ...options, headers: { "Content-Type": "application/json", ...options.headers, }, }); }; /** * Get Statuses */ export const getStatuses = ( options: Options ) => { return (options.client ?? _heyApiClient).get< GetStatusesResponses, GetStatusesErrors, ThrowOnError >({ requestValidator: async data => { return await zGetStatusesData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zGetStatusesResponse2.parseAsync(data); }, url: "/status/{boardId}", ...options, }); }; /** * Create Status */ export const createStatus = ( options: Options ) => { return (options.client ?? _heyApiClient).post< CreateStatusResponses, CreateStatusErrors, ThrowOnError >({ requestValidator: async data => { return await zCreateStatusData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zCreateStatusResponse2.parseAsync(data); }, url: "/status/", ...options, headers: { "Content-Type": "application/json", ...options.headers, }, }); }; /** * Delete Status */ export const deleteStatus = ( options: Options ) => { return (options.client ?? _heyApiClient).delete< DeleteStatusResponses, DeleteStatusErrors, ThrowOnError >({ requestValidator: async data => { return await zDeleteStatusData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zDeleteStatusResponse2.parseAsync(data); }, url: "/status/{pk}", ...options, }); }; /** * Update Status */ export const updateStatus = ( options: Options ) => { return (options.client ?? _heyApiClient).patch< UpdateStatusResponses, UpdateStatusErrors, ThrowOnError >({ requestValidator: async data => { return await zUpdateStatusData.parseAsync(data); }, responseType: "json", responseValidator: async data => { return await zUpdateStatusResponse2.parseAsync(data); }, url: "/status/{pk}", ...options, headers: { "Content-Type": "application/json", ...options.headers, }, }); };