// This file is auto-generated by @hey-api/openapi-ts

/**
 * BoardSchema
 */
export type BoardSchema = {
    /**
     * Name
     */
    name: string;
    /**
     * Id
     */
    id: number;
    /**
     * Lexorank
     */
    lexorank: string;
};

/**
 * DealSchema
 */
export type DealSchema = {
    /**
     * Name
     */
    name: string;
    /**
     * Id
     */
    id: number;
    /**
     * Lexorank
     */
    lexorank: string;
    /**
     * Statusid
     */
    statusId: number;
};

/**
 * GetBoardsResponse
 */
export type GetBoardsResponse = {
    /**
     * Boards
     */
    boards: Array<BoardSchema>;
};

/**
 * GetDealsResponse
 */
export type GetDealsResponse = {
    /**
     * Deals
     */
    deals: Array<DealSchema>;
};

/**
 * GetProjectsResponse
 */
export type GetProjectsResponse = {
    /**
     * Projects
     */
    projects: Array<ProjectSchema>;
};

/**
 * GetStatusesResponse
 */
export type GetStatusesResponse = {
    /**
     * Statuses
     */
    statuses: Array<StatusSchema>;
};

/**
 * HTTPValidationError
 */
export type HttpValidationError = {
    /**
     * Detail
     */
    detail?: Array<ValidationError>;
};

/**
 * ProjectSchema
 */
export type ProjectSchema = {
    /**
     * Name
     */
    name: string;
    /**
     * Id
     */
    id: number;
};

/**
 * StatusSchema
 */
export type StatusSchema = {
    /**
     * Name
     */
    name: string;
    /**
     * Id
     */
    id: number;
    /**
     * Lexorank
     */
    lexorank: string;
};

/**
 * UpdateBoardRequest
 */
export type UpdateBoardRequest = {
    board: UpdateBoardSchema;
};

/**
 * UpdateBoardResponse
 */
export type UpdateBoardResponse = {
    /**
     * Message
     */
    message: string;
};

/**
 * UpdateBoardSchema
 */
export type UpdateBoardSchema = {
    /**
     * Name
     */
    name?: string | null;
    /**
     * Lexorank
     */
    lexorank?: string | null;
};

/**
 * UpdateDealRequest
 */
export type UpdateDealRequest = {
    deal: UpdateDealSchema;
};

/**
 * UpdateDealResponse
 */
export type UpdateDealResponse = {
    /**
     * Message
     */
    message: string;
};

/**
 * UpdateDealSchema
 */
export type UpdateDealSchema = {
    /**
     * Name
     */
    name?: string | null;
    /**
     * Lexorank
     */
    lexorank?: string | null;
    /**
     * Statusid
     */
    statusId?: number | null;
};

/**
 * UpdateStatusRequest
 */
export type UpdateStatusRequest = {
    status: UpdateStatusSchema;
};

/**
 * UpdateStatusResponse
 */
export type UpdateStatusResponse = {
    /**
     * Message
     */
    message: string;
};

/**
 * UpdateStatusSchema
 */
export type UpdateStatusSchema = {
    /**
     * Name
     */
    name?: string | null;
    /**
     * Lexorank
     */
    lexorank?: string | null;
};

/**
 * ValidationError
 */
export type ValidationError = {
    /**
     * Location
     */
    loc: Array<string | number>;
    /**
     * Message
     */
    msg: string;
    /**
     * Error Type
     */
    type: string;
};

export type GetProjectsData = {
    body?: never;
    path?: never;
    query?: never;
    url: "/project/";
};

export type GetProjectsResponses = {
    /**
     * Successful Response
     */
    200: GetProjectsResponse;
};

export type GetProjectsResponse2 =
    GetProjectsResponses[keyof GetProjectsResponses];

export type GetBoardsData = {
    body?: never;
    path: {
        /**
         * Projectid
         */
        projectId: number;
    };
    query?: never;
    url: "/board/{projectId}";
};

export type GetBoardsErrors = {
    /**
     * Validation Error
     */
    422: HttpValidationError;
};

export type GetBoardsError = GetBoardsErrors[keyof GetBoardsErrors];

export type GetBoardsResponses = {
    /**
     * Successful Response
     */
    200: GetBoardsResponse;
};

export type GetBoardsResponse2 = GetBoardsResponses[keyof GetBoardsResponses];

export type UpdateBoardData = {
    body: UpdateBoardRequest;
    path: {
        /**
         * Boardid
         */
        boardId: number;
    };
    query?: never;
    url: "/board/{boardId}";
};

export type UpdateBoardErrors = {
    /**
     * Validation Error
     */
    422: HttpValidationError;
};

export type UpdateBoardError = UpdateBoardErrors[keyof UpdateBoardErrors];

export type UpdateBoardResponses = {
    /**
     * Successful Response
     */
    200: UpdateBoardResponse;
};

export type UpdateBoardResponse2 =
    UpdateBoardResponses[keyof UpdateBoardResponses];

export type GetStatusesData = {
    body?: never;
    path: {
        /**
         * Boardid
         */
        boardId: number;
    };
    query?: never;
    url: "/status/{boardId}";
};

export type GetStatusesErrors = {
    /**
     * Validation Error
     */
    422: HttpValidationError;
};

export type GetStatusesError = GetStatusesErrors[keyof GetStatusesErrors];

export type GetStatusesResponses = {
    /**
     * Successful Response
     */
    200: GetStatusesResponse;
};

export type GetStatusesResponse2 =
    GetStatusesResponses[keyof GetStatusesResponses];

export type UpdateStatusData = {
    body: UpdateStatusRequest;
    path: {
        /**
         * Statusid
         */
        statusId: number;
    };
    query?: never;
    url: "/status/{statusId}";
};

export type UpdateStatusErrors = {
    /**
     * Validation Error
     */
    422: HttpValidationError;
};

export type UpdateStatusError = UpdateStatusErrors[keyof UpdateStatusErrors];

export type UpdateStatusResponses = {
    /**
     * Successful Response
     */
    200: UpdateStatusResponse;
};

export type UpdateStatusResponse2 =
    UpdateStatusResponses[keyof UpdateStatusResponses];

export type GetDealsData = {
    body?: never;
    path: {
        /**
         * Boardid
         */
        boardId: number;
    };
    query?: never;
    url: "/deal/{boardId}";
};

export type GetDealsErrors = {
    /**
     * Validation Error
     */
    422: HttpValidationError;
};

export type GetDealsError = GetDealsErrors[keyof GetDealsErrors];

export type GetDealsResponses = {
    /**
     * Successful Response
     */
    200: GetDealsResponse;
};

export type GetDealsResponse2 = GetDealsResponses[keyof GetDealsResponses];

export type UpdateDealData = {
    body: UpdateDealRequest;
    path: {
        /**
         * Dealid
         */
        dealId: number;
    };
    query?: never;
    url: "/deal/{dealId}";
};

export type UpdateDealErrors = {
    /**
     * Validation Error
     */
    422: HttpValidationError;
};

export type UpdateDealError = UpdateDealErrors[keyof UpdateDealErrors];

export type UpdateDealResponses = {
    /**
     * Successful Response
     */
    200: UpdateDealResponse;
};

export type UpdateDealResponse2 =
    UpdateDealResponses[keyof UpdateDealResponses];

export type ClientOptions = {
    baseURL: "http://localhost:8000" | (string & {});
};
