/* tslint:disable */
/* eslint-disable */
/**
 *
 * No description provided (generated by Openapi Generator https://github.com/openapitools/openapi-generator)
 *
 * The version of the OpenAPI document:
 *
 *
 * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
 * https://openapi-generator.tech
 * Do not edit the class manually.
 */

import type { Configuration } from '../configuration';
import type { AxiosPromise, AxiosInstance, RawAxiosRequestConfig } from 'axios';
import globalAxios from 'axios';
// Some imports not used depending on template conditions
// @ts-ignore
import {
  DUMMY_BASE_URL,
  assertParamExists,
  setApiKeyToObject,
  setBasicAuthToObject,
  setBearerAuthToObject,
  setOAuthToObject,
  setSearchParams,
  serializeDataIfNeeded,
  toPathString,
  createRequestFunction
} from '../common';
// @ts-ignore
import {
  BASE_PATH,
  COLLECTION_FORMATS,
  type RequestArgs,
  BaseAPI,
  RequiredError,
  operationServerMap
} from '../base';
// @ts-ignore
import type { KamiApiCardRedeemJdV1AccountAddReq } from '../models';
// @ts-ignore
import type { KamiApiCardRedeemJdV1AccountGetRes } from '../models';
// @ts-ignore
import type { KamiApiCardRedeemJdV1AccountListRes } from '../models';
// @ts-ignore
import type { KamiApiCardRedeemJdV1AccountStatusReq } from '../models';
// @ts-ignore
import type { KamiApiCardRedeemJdV1AccountUpdateReq } from '../models';
// @ts-ignore
import type { KamiApiCardRedeemJdV1OrderListRes } from '../models';
// @ts-ignore
import type { KamiApiCardRedeemJdV1PlaceOrderReq } from '../models';
// @ts-ignore
import type { KamiApiCardRedeemJdV1PlaceOrderRes } from '../models';
/**
 * CkApi - axios parameter creator
 * @export
 */
export const CkApiAxiosParamCreator = function (configuration?: Configuration) {
  return {
    /**
     *
     * @summary 添加京东ck
     * @param {KamiApiCardRedeemJdV1AccountAddReq} [kamiApiCardRedeemJdV1AccountAddReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountAddPost: async (
      kamiApiCardRedeemJdV1AccountAddReq?: KamiApiCardRedeemJdV1AccountAddReq,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/cookieInfo/jd/account/add`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'POST',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      localVarHeaderParameter['Content-Type'] = 'application/json';

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };
      localVarRequestOptions.data = serializeDataIfNeeded(
        kamiApiCardRedeemJdV1AccountAddReq,
        localVarRequestOptions,
        configuration
      );

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary 删除京东ck
     * @param {number} id
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountDeleteDelete: async (
      id: number,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      // verify required parameter 'id' is not null or undefined
      assertParamExists('apiCookieInfoJdAccountDeleteDelete', 'id', id);
      const localVarPath = `/api/cookieInfo/jd/account/delete`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'DELETE',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (id !== undefined) {
        localVarQueryParameter['id'] = id;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary 获取京东ck
     * @param {number} id
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountGetGet: async (
      id: number,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      // verify required parameter 'id' is not null or undefined
      assertParamExists('apiCookieInfoJdAccountGetGet', 'id', id);
      const localVarPath = `/api/cookieInfo/jd/account/get`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (id !== undefined) {
        localVarQueryParameter['id'] = id;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary 获取京东ck列表
     * @param {number} current 页数
     * @param {ApiCookieInfoJdAccountListGetPageSizeEnum} pageSize 页码
     * @param {ApiCookieInfoJdAccountListGetStatusEnum} [status] 状态
     * @param {string} [name] 昵称
     * @param {string} [cookie] ck
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountListGet: async (
      current: number,
      pageSize: ApiCookieInfoJdAccountListGetPageSizeEnum,
      status?: ApiCookieInfoJdAccountListGetStatusEnum,
      name?: string,
      cookie?: string,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      // verify required parameter 'current' is not null or undefined
      assertParamExists('apiCookieInfoJdAccountListGet', 'current', current);
      // verify required parameter 'pageSize' is not null or undefined
      assertParamExists('apiCookieInfoJdAccountListGet', 'pageSize', pageSize);
      const localVarPath = `/api/cookieInfo/jd/account/list`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (current !== undefined) {
        localVarQueryParameter['current'] = current;
      }

      if (pageSize !== undefined) {
        localVarQueryParameter['pageSize'] = pageSize;
      }

      if (status !== undefined) {
        localVarQueryParameter['status'] = status;
      }

      if (name !== undefined) {
        localVarQueryParameter['name'] = name;
      }

      if (cookie !== undefined) {
        localVarQueryParameter['cookie'] = cookie;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary 修改京东ck状态
     * @param {KamiApiCardRedeemJdV1AccountStatusReq} [kamiApiCardRedeemJdV1AccountStatusReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountStatusPut: async (
      kamiApiCardRedeemJdV1AccountStatusReq?: KamiApiCardRedeemJdV1AccountStatusReq,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/cookieInfo/jd/account/status`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'PUT',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      localVarHeaderParameter['Content-Type'] = 'application/json';

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };
      localVarRequestOptions.data = serializeDataIfNeeded(
        kamiApiCardRedeemJdV1AccountStatusReq,
        localVarRequestOptions,
        configuration
      );

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary 更新京东ck
     * @param {KamiApiCardRedeemJdV1AccountUpdateReq} [kamiApiCardRedeemJdV1AccountUpdateReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountUpdatePut: async (
      kamiApiCardRedeemJdV1AccountUpdateReq?: KamiApiCardRedeemJdV1AccountUpdateReq,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/cookieInfo/jd/account/update`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'PUT',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      localVarHeaderParameter['Content-Type'] = 'application/json';

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };
      localVarRequestOptions.data = serializeDataIfNeeded(
        kamiApiCardRedeemJdV1AccountUpdateReq,
        localVarRequestOptions,
        configuration
      );

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary 获取订单列表
     * @param {number} current 页数
     * @param {ApiCookieInfoJdOrderListGetPageSizeEnum} pageSize 页码
     * @param {number} [cookieId] cookieId
     * @param {string} [cookie] cookie
     * @param {ApiCookieInfoJdOrderListGetStatusEnum} [status] 状态
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdOrderListGet: async (
      current: number,
      pageSize: ApiCookieInfoJdOrderListGetPageSizeEnum,
      cookieId?: number,
      cookie?: string,
      status?: ApiCookieInfoJdOrderListGetStatusEnum,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      // verify required parameter 'current' is not null or undefined
      assertParamExists('apiCookieInfoJdOrderListGet', 'current', current);
      // verify required parameter 'pageSize' is not null or undefined
      assertParamExists('apiCookieInfoJdOrderListGet', 'pageSize', pageSize);
      const localVarPath = `/api/cookieInfo/jd/order/list`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'GET',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      if (current !== undefined) {
        localVarQueryParameter['current'] = current;
      }

      if (pageSize !== undefined) {
        localVarQueryParameter['pageSize'] = pageSize;
      }

      if (cookieId !== undefined) {
        localVarQueryParameter['cookieId'] = cookieId;
      }

      if (cookie !== undefined) {
        localVarQueryParameter['cookie'] = cookie;
      }

      if (status !== undefined) {
        localVarQueryParameter['status'] = status;
      }

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    },
    /**
     *
     * @summary 下单
     * @param {KamiApiCardRedeemJdV1PlaceOrderReq} [kamiApiCardRedeemJdV1PlaceOrderReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdOrderPlaceOrderPost: async (
      kamiApiCardRedeemJdV1PlaceOrderReq?: KamiApiCardRedeemJdV1PlaceOrderReq,
      options: RawAxiosRequestConfig = {}
    ): Promise<RequestArgs> => {
      const localVarPath = `/api/cookieInfo/jd/order/placeOrder`;
      // use dummy base URL string because the URL constructor only accepts absolute URLs.
      const localVarUrlObj = new URL(localVarPath, DUMMY_BASE_URL);
      let baseOptions;
      if (configuration) {
        baseOptions = configuration.baseOptions;
      }

      const localVarRequestOptions = {
        method: 'POST',
        ...baseOptions,
        ...options
      };
      const localVarHeaderParameter = {} as any;
      const localVarQueryParameter = {} as any;

      localVarHeaderParameter['Content-Type'] = 'application/json';

      setSearchParams(localVarUrlObj, localVarQueryParameter);
      let headersFromBaseOptions =
        baseOptions && baseOptions.headers ? baseOptions.headers : {};
      localVarRequestOptions.headers = {
        ...localVarHeaderParameter,
        ...headersFromBaseOptions,
        ...options.headers
      };
      localVarRequestOptions.data = serializeDataIfNeeded(
        kamiApiCardRedeemJdV1PlaceOrderReq,
        localVarRequestOptions,
        configuration
      );

      return {
        url: toPathString(localVarUrlObj),
        options: localVarRequestOptions
      };
    }
  };
};

/**
 * CkApi - functional programming interface
 * @export
 */
export const CkApiFp = function (configuration?: Configuration) {
  const localVarAxiosParamCreator = CkApiAxiosParamCreator(configuration);
  return {
    /**
     *
     * @summary 添加京东ck
     * @param {KamiApiCardRedeemJdV1AccountAddReq} [kamiApiCardRedeemJdV1AccountAddReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiCookieInfoJdAccountAddPost(
      kamiApiCardRedeemJdV1AccountAddReq?: KamiApiCardRedeemJdV1AccountAddReq,
      options?: RawAxiosRequestConfig
    ): Promise<
      (axios?: AxiosInstance, basePath?: string) => AxiosPromise<object>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiCookieInfoJdAccountAddPost(
          kamiApiCardRedeemJdV1AccountAddReq,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['CkApi.apiCookieInfoJdAccountAddPost']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary 删除京东ck
     * @param {number} id
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiCookieInfoJdAccountDeleteDelete(
      id: number,
      options?: RawAxiosRequestConfig
    ): Promise<
      (axios?: AxiosInstance, basePath?: string) => AxiosPromise<object>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiCookieInfoJdAccountDeleteDelete(
          id,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['CkApi.apiCookieInfoJdAccountDeleteDelete']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary 获取京东ck
     * @param {number} id
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiCookieInfoJdAccountGetGet(
      id: number,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiCardRedeemJdV1AccountGetRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiCookieInfoJdAccountGetGet(
          id,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['CkApi.apiCookieInfoJdAccountGetGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary 获取京东ck列表
     * @param {number} current 页数
     * @param {ApiCookieInfoJdAccountListGetPageSizeEnum} pageSize 页码
     * @param {ApiCookieInfoJdAccountListGetStatusEnum} [status] 状态
     * @param {string} [name] 昵称
     * @param {string} [cookie] ck
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiCookieInfoJdAccountListGet(
      current: number,
      pageSize: ApiCookieInfoJdAccountListGetPageSizeEnum,
      status?: ApiCookieInfoJdAccountListGetStatusEnum,
      name?: string,
      cookie?: string,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiCardRedeemJdV1AccountListRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiCookieInfoJdAccountListGet(
          current,
          pageSize,
          status,
          name,
          cookie,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['CkApi.apiCookieInfoJdAccountListGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary 修改京东ck状态
     * @param {KamiApiCardRedeemJdV1AccountStatusReq} [kamiApiCardRedeemJdV1AccountStatusReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiCookieInfoJdAccountStatusPut(
      kamiApiCardRedeemJdV1AccountStatusReq?: KamiApiCardRedeemJdV1AccountStatusReq,
      options?: RawAxiosRequestConfig
    ): Promise<
      (axios?: AxiosInstance, basePath?: string) => AxiosPromise<object>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiCookieInfoJdAccountStatusPut(
          kamiApiCardRedeemJdV1AccountStatusReq,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['CkApi.apiCookieInfoJdAccountStatusPut']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary 更新京东ck
     * @param {KamiApiCardRedeemJdV1AccountUpdateReq} [kamiApiCardRedeemJdV1AccountUpdateReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiCookieInfoJdAccountUpdatePut(
      kamiApiCardRedeemJdV1AccountUpdateReq?: KamiApiCardRedeemJdV1AccountUpdateReq,
      options?: RawAxiosRequestConfig
    ): Promise<
      (axios?: AxiosInstance, basePath?: string) => AxiosPromise<object>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiCookieInfoJdAccountUpdatePut(
          kamiApiCardRedeemJdV1AccountUpdateReq,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['CkApi.apiCookieInfoJdAccountUpdatePut']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary 获取订单列表
     * @param {number} current 页数
     * @param {ApiCookieInfoJdOrderListGetPageSizeEnum} pageSize 页码
     * @param {number} [cookieId] cookieId
     * @param {string} [cookie] cookie
     * @param {ApiCookieInfoJdOrderListGetStatusEnum} [status] 状态
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiCookieInfoJdOrderListGet(
      current: number,
      pageSize: ApiCookieInfoJdOrderListGetPageSizeEnum,
      cookieId?: number,
      cookie?: string,
      status?: ApiCookieInfoJdOrderListGetStatusEnum,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiCardRedeemJdV1OrderListRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiCookieInfoJdOrderListGet(
          current,
          pageSize,
          cookieId,
          cookie,
          status,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['CkApi.apiCookieInfoJdOrderListGet']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    },
    /**
     *
     * @summary 下单
     * @param {KamiApiCardRedeemJdV1PlaceOrderReq} [kamiApiCardRedeemJdV1PlaceOrderReq]
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    async apiCookieInfoJdOrderPlaceOrderPost(
      kamiApiCardRedeemJdV1PlaceOrderReq?: KamiApiCardRedeemJdV1PlaceOrderReq,
      options?: RawAxiosRequestConfig
    ): Promise<
      (
        axios?: AxiosInstance,
        basePath?: string
      ) => AxiosPromise<KamiApiCardRedeemJdV1PlaceOrderRes>
    > {
      const localVarAxiosArgs =
        await localVarAxiosParamCreator.apiCookieInfoJdOrderPlaceOrderPost(
          kamiApiCardRedeemJdV1PlaceOrderReq,
          options
        );
      const localVarOperationServerIndex = configuration?.serverIndex ?? 0;
      const localVarOperationServerBasePath =
        operationServerMap['CkApi.apiCookieInfoJdOrderPlaceOrderPost']?.[
          localVarOperationServerIndex
        ]?.url;
      return (axios, basePath) =>
        createRequestFunction(
          localVarAxiosArgs,
          globalAxios,
          BASE_PATH,
          configuration
        )(axios, localVarOperationServerBasePath || basePath);
    }
  };
};

/**
 * CkApi - factory interface
 * @export
 */
export const CkApiFactory = function (
  configuration?: Configuration,
  basePath?: string,
  axios?: AxiosInstance
) {
  const localVarFp = CkApiFp(configuration);
  return {
    /**
     *
     * @summary 添加京东ck
     * @param {CkApiApiCookieInfoJdAccountAddPostRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountAddPost(
      requestParameters: CkApiApiCookieInfoJdAccountAddPostRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<object> {
      return localVarFp
        .apiCookieInfoJdAccountAddPost(
          requestParameters.kamiApiCardRedeemJdV1AccountAddReq,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary 删除京东ck
     * @param {CkApiApiCookieInfoJdAccountDeleteDeleteRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountDeleteDelete(
      requestParameters: CkApiApiCookieInfoJdAccountDeleteDeleteRequest,
      options?: RawAxiosRequestConfig
    ): AxiosPromise<object> {
      return localVarFp
        .apiCookieInfoJdAccountDeleteDelete(requestParameters.id, options)
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary 获取京东ck
     * @param {CkApiApiCookieInfoJdAccountGetGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountGetGet(
      requestParameters: CkApiApiCookieInfoJdAccountGetGetRequest,
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiCardRedeemJdV1AccountGetRes> {
      return localVarFp
        .apiCookieInfoJdAccountGetGet(requestParameters.id, options)
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary 获取京东ck列表
     * @param {CkApiApiCookieInfoJdAccountListGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountListGet(
      requestParameters: CkApiApiCookieInfoJdAccountListGetRequest,
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiCardRedeemJdV1AccountListRes> {
      return localVarFp
        .apiCookieInfoJdAccountListGet(
          requestParameters.current,
          requestParameters.pageSize,
          requestParameters.status,
          requestParameters.name,
          requestParameters.cookie,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary 修改京东ck状态
     * @param {CkApiApiCookieInfoJdAccountStatusPutRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountStatusPut(
      requestParameters: CkApiApiCookieInfoJdAccountStatusPutRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<object> {
      return localVarFp
        .apiCookieInfoJdAccountStatusPut(
          requestParameters.kamiApiCardRedeemJdV1AccountStatusReq,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary 更新京东ck
     * @param {CkApiApiCookieInfoJdAccountUpdatePutRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdAccountUpdatePut(
      requestParameters: CkApiApiCookieInfoJdAccountUpdatePutRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<object> {
      return localVarFp
        .apiCookieInfoJdAccountUpdatePut(
          requestParameters.kamiApiCardRedeemJdV1AccountUpdateReq,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary 获取订单列表
     * @param {CkApiApiCookieInfoJdOrderListGetRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdOrderListGet(
      requestParameters: CkApiApiCookieInfoJdOrderListGetRequest,
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiCardRedeemJdV1OrderListRes> {
      return localVarFp
        .apiCookieInfoJdOrderListGet(
          requestParameters.current,
          requestParameters.pageSize,
          requestParameters.cookieId,
          requestParameters.cookie,
          requestParameters.status,
          options
        )
        .then(request => request(axios, basePath));
    },
    /**
     *
     * @summary 下单
     * @param {CkApiApiCookieInfoJdOrderPlaceOrderPostRequest} requestParameters Request parameters.
     * @param {*} [options] Override http request option.
     * @throws {RequiredError}
     */
    apiCookieInfoJdOrderPlaceOrderPost(
      requestParameters: CkApiApiCookieInfoJdOrderPlaceOrderPostRequest = {},
      options?: RawAxiosRequestConfig
    ): AxiosPromise<KamiApiCardRedeemJdV1PlaceOrderRes> {
      return localVarFp
        .apiCookieInfoJdOrderPlaceOrderPost(
          requestParameters.kamiApiCardRedeemJdV1PlaceOrderReq,
          options
        )
        .then(request => request(axios, basePath));
    }
  };
};

/**
 * CkApi - interface
 * @export
 * @interface CkApi
 */
export interface CkApiInterface {
  /**
   *
   * @summary 添加京东ck
   * @param {CkApiApiCookieInfoJdAccountAddPostRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApiInterface
   */
  apiCookieInfoJdAccountAddPost(
    requestParameters?: CkApiApiCookieInfoJdAccountAddPostRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<object>;

  /**
   *
   * @summary 删除京东ck
   * @param {CkApiApiCookieInfoJdAccountDeleteDeleteRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApiInterface
   */
  apiCookieInfoJdAccountDeleteDelete(
    requestParameters: CkApiApiCookieInfoJdAccountDeleteDeleteRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<object>;

  /**
   *
   * @summary 获取京东ck
   * @param {CkApiApiCookieInfoJdAccountGetGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApiInterface
   */
  apiCookieInfoJdAccountGetGet(
    requestParameters: CkApiApiCookieInfoJdAccountGetGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiCardRedeemJdV1AccountGetRes>;

  /**
   *
   * @summary 获取京东ck列表
   * @param {CkApiApiCookieInfoJdAccountListGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApiInterface
   */
  apiCookieInfoJdAccountListGet(
    requestParameters: CkApiApiCookieInfoJdAccountListGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiCardRedeemJdV1AccountListRes>;

  /**
   *
   * @summary 修改京东ck状态
   * @param {CkApiApiCookieInfoJdAccountStatusPutRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApiInterface
   */
  apiCookieInfoJdAccountStatusPut(
    requestParameters?: CkApiApiCookieInfoJdAccountStatusPutRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<object>;

  /**
   *
   * @summary 更新京东ck
   * @param {CkApiApiCookieInfoJdAccountUpdatePutRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApiInterface
   */
  apiCookieInfoJdAccountUpdatePut(
    requestParameters?: CkApiApiCookieInfoJdAccountUpdatePutRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<object>;

  /**
   *
   * @summary 获取订单列表
   * @param {CkApiApiCookieInfoJdOrderListGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApiInterface
   */
  apiCookieInfoJdOrderListGet(
    requestParameters: CkApiApiCookieInfoJdOrderListGetRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiCardRedeemJdV1OrderListRes>;

  /**
   *
   * @summary 下单
   * @param {CkApiApiCookieInfoJdOrderPlaceOrderPostRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApiInterface
   */
  apiCookieInfoJdOrderPlaceOrderPost(
    requestParameters?: CkApiApiCookieInfoJdOrderPlaceOrderPostRequest,
    options?: RawAxiosRequestConfig
  ): AxiosPromise<KamiApiCardRedeemJdV1PlaceOrderRes>;
}

/**
 * Request parameters for apiCookieInfoJdAccountAddPost operation in CkApi.
 * @export
 * @interface CkApiApiCookieInfoJdAccountAddPostRequest
 */
export interface CkApiApiCookieInfoJdAccountAddPostRequest {
  /**
   *
   * @type {KamiApiCardRedeemJdV1AccountAddReq}
   * @memberof CkApiApiCookieInfoJdAccountAddPost
   */
  readonly kamiApiCardRedeemJdV1AccountAddReq?: KamiApiCardRedeemJdV1AccountAddReq;
}

/**
 * Request parameters for apiCookieInfoJdAccountDeleteDelete operation in CkApi.
 * @export
 * @interface CkApiApiCookieInfoJdAccountDeleteDeleteRequest
 */
export interface CkApiApiCookieInfoJdAccountDeleteDeleteRequest {
  /**
   *
   * @type {number}
   * @memberof CkApiApiCookieInfoJdAccountDeleteDelete
   */
  readonly id: number;
}

/**
 * Request parameters for apiCookieInfoJdAccountGetGet operation in CkApi.
 * @export
 * @interface CkApiApiCookieInfoJdAccountGetGetRequest
 */
export interface CkApiApiCookieInfoJdAccountGetGetRequest {
  /**
   *
   * @type {number}
   * @memberof CkApiApiCookieInfoJdAccountGetGet
   */
  readonly id: number;
}

/**
 * Request parameters for apiCookieInfoJdAccountListGet operation in CkApi.
 * @export
 * @interface CkApiApiCookieInfoJdAccountListGetRequest
 */
export interface CkApiApiCookieInfoJdAccountListGetRequest {
  /**
   * 页数
   * @type {number}
   * @memberof CkApiApiCookieInfoJdAccountListGet
   */
  readonly current: number;

  /**
   * 页码
   * @type {5 | 10 | 15 | 20 | 50 | 100}
   * @memberof CkApiApiCookieInfoJdAccountListGet
   */
  readonly pageSize: ApiCookieInfoJdAccountListGetPageSizeEnum;

  /**
   * 状态
   * @type {'disable' | 'normal'}
   * @memberof CkApiApiCookieInfoJdAccountListGet
   */
  readonly status?: ApiCookieInfoJdAccountListGetStatusEnum;

  /**
   * 昵称
   * @type {string}
   * @memberof CkApiApiCookieInfoJdAccountListGet
   */
  readonly name?: string;

  /**
   * ck
   * @type {string}
   * @memberof CkApiApiCookieInfoJdAccountListGet
   */
  readonly cookie?: string;
}

/**
 * Request parameters for apiCookieInfoJdAccountStatusPut operation in CkApi.
 * @export
 * @interface CkApiApiCookieInfoJdAccountStatusPutRequest
 */
export interface CkApiApiCookieInfoJdAccountStatusPutRequest {
  /**
   *
   * @type {KamiApiCardRedeemJdV1AccountStatusReq}
   * @memberof CkApiApiCookieInfoJdAccountStatusPut
   */
  readonly kamiApiCardRedeemJdV1AccountStatusReq?: KamiApiCardRedeemJdV1AccountStatusReq;
}

/**
 * Request parameters for apiCookieInfoJdAccountUpdatePut operation in CkApi.
 * @export
 * @interface CkApiApiCookieInfoJdAccountUpdatePutRequest
 */
export interface CkApiApiCookieInfoJdAccountUpdatePutRequest {
  /**
   *
   * @type {KamiApiCardRedeemJdV1AccountUpdateReq}
   * @memberof CkApiApiCookieInfoJdAccountUpdatePut
   */
  readonly kamiApiCardRedeemJdV1AccountUpdateReq?: KamiApiCardRedeemJdV1AccountUpdateReq;
}

/**
 * Request parameters for apiCookieInfoJdOrderListGet operation in CkApi.
 * @export
 * @interface CkApiApiCookieInfoJdOrderListGetRequest
 */
export interface CkApiApiCookieInfoJdOrderListGetRequest {
  /**
   * 页数
   * @type {number}
   * @memberof CkApiApiCookieInfoJdOrderListGet
   */
  readonly current: number;

  /**
   * 页码
   * @type {5 | 10 | 15 | 20 | 50 | 100}
   * @memberof CkApiApiCookieInfoJdOrderListGet
   */
  readonly pageSize: ApiCookieInfoJdOrderListGetPageSizeEnum;

  /**
   * cookieId
   * @type {number}
   * @memberof CkApiApiCookieInfoJdOrderListGet
   */
  readonly cookieId?: number;

  /**
   * cookie
   * @type {string}
   * @memberof CkApiApiCookieInfoJdOrderListGet
   */
  readonly cookie?: string;

  /**
   * 状态
   * @type {'fail' | 'init' | 'success'}
   * @memberof CkApiApiCookieInfoJdOrderListGet
   */
  readonly status?: ApiCookieInfoJdOrderListGetStatusEnum;
}

/**
 * Request parameters for apiCookieInfoJdOrderPlaceOrderPost operation in CkApi.
 * @export
 * @interface CkApiApiCookieInfoJdOrderPlaceOrderPostRequest
 */
export interface CkApiApiCookieInfoJdOrderPlaceOrderPostRequest {
  /**
   *
   * @type {KamiApiCardRedeemJdV1PlaceOrderReq}
   * @memberof CkApiApiCookieInfoJdOrderPlaceOrderPost
   */
  readonly kamiApiCardRedeemJdV1PlaceOrderReq?: KamiApiCardRedeemJdV1PlaceOrderReq;
}

/**
 * CkApi - object-oriented interface
 * @export
 * @class CkApi
 * @extends {BaseAPI}
 */
export class CkApi extends BaseAPI implements CkApiInterface {
  /**
   *
   * @summary 添加京东ck
   * @param {CkApiApiCookieInfoJdAccountAddPostRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApi
   */
  public apiCookieInfoJdAccountAddPost(
    requestParameters: CkApiApiCookieInfoJdAccountAddPostRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return CkApiFp(this.configuration)
      .apiCookieInfoJdAccountAddPost(
        requestParameters.kamiApiCardRedeemJdV1AccountAddReq,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary 删除京东ck
   * @param {CkApiApiCookieInfoJdAccountDeleteDeleteRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApi
   */
  public apiCookieInfoJdAccountDeleteDelete(
    requestParameters: CkApiApiCookieInfoJdAccountDeleteDeleteRequest,
    options?: RawAxiosRequestConfig
  ) {
    return CkApiFp(this.configuration)
      .apiCookieInfoJdAccountDeleteDelete(requestParameters.id, options)
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary 获取京东ck
   * @param {CkApiApiCookieInfoJdAccountGetGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApi
   */
  public apiCookieInfoJdAccountGetGet(
    requestParameters: CkApiApiCookieInfoJdAccountGetGetRequest,
    options?: RawAxiosRequestConfig
  ) {
    return CkApiFp(this.configuration)
      .apiCookieInfoJdAccountGetGet(requestParameters.id, options)
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary 获取京东ck列表
   * @param {CkApiApiCookieInfoJdAccountListGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApi
   */
  public apiCookieInfoJdAccountListGet(
    requestParameters: CkApiApiCookieInfoJdAccountListGetRequest,
    options?: RawAxiosRequestConfig
  ) {
    return CkApiFp(this.configuration)
      .apiCookieInfoJdAccountListGet(
        requestParameters.current,
        requestParameters.pageSize,
        requestParameters.status,
        requestParameters.name,
        requestParameters.cookie,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary 修改京东ck状态
   * @param {CkApiApiCookieInfoJdAccountStatusPutRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApi
   */
  public apiCookieInfoJdAccountStatusPut(
    requestParameters: CkApiApiCookieInfoJdAccountStatusPutRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return CkApiFp(this.configuration)
      .apiCookieInfoJdAccountStatusPut(
        requestParameters.kamiApiCardRedeemJdV1AccountStatusReq,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary 更新京东ck
   * @param {CkApiApiCookieInfoJdAccountUpdatePutRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApi
   */
  public apiCookieInfoJdAccountUpdatePut(
    requestParameters: CkApiApiCookieInfoJdAccountUpdatePutRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return CkApiFp(this.configuration)
      .apiCookieInfoJdAccountUpdatePut(
        requestParameters.kamiApiCardRedeemJdV1AccountUpdateReq,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary 获取订单列表
   * @param {CkApiApiCookieInfoJdOrderListGetRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApi
   */
  public apiCookieInfoJdOrderListGet(
    requestParameters: CkApiApiCookieInfoJdOrderListGetRequest,
    options?: RawAxiosRequestConfig
  ) {
    return CkApiFp(this.configuration)
      .apiCookieInfoJdOrderListGet(
        requestParameters.current,
        requestParameters.pageSize,
        requestParameters.cookieId,
        requestParameters.cookie,
        requestParameters.status,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }

  /**
   *
   * @summary 下单
   * @param {CkApiApiCookieInfoJdOrderPlaceOrderPostRequest} requestParameters Request parameters.
   * @param {*} [options] Override http request option.
   * @throws {RequiredError}
   * @memberof CkApi
   */
  public apiCookieInfoJdOrderPlaceOrderPost(
    requestParameters: CkApiApiCookieInfoJdOrderPlaceOrderPostRequest = {},
    options?: RawAxiosRequestConfig
  ) {
    return CkApiFp(this.configuration)
      .apiCookieInfoJdOrderPlaceOrderPost(
        requestParameters.kamiApiCardRedeemJdV1PlaceOrderReq,
        options
      )
      .then(request => request(this.axios, this.basePath));
  }
}

/**
 * @export
 * @enum {string}
 */
export enum ApiCookieInfoJdAccountListGetPageSizeEnum {
  NUMBER_5 = 5,
  NUMBER_10 = 10,
  NUMBER_15 = 15,
  NUMBER_20 = 20,
  NUMBER_50 = 50,
  NUMBER_100 = 100
}
/**
 * @export
 * @enum {string}
 */
export enum ApiCookieInfoJdAccountListGetStatusEnum {
  Disable = 'disable',
  Normal = 'normal'
}
/**
 * @export
 * @enum {string}
 */
export enum ApiCookieInfoJdOrderListGetPageSizeEnum {
  NUMBER_5 = 5,
  NUMBER_10 = 10,
  NUMBER_15 = 15,
  NUMBER_20 = 20,
  NUMBER_50 = 50,
  NUMBER_100 = 100
}
/**
 * @export
 * @enum {string}
 */
export enum ApiCookieInfoJdOrderListGetStatusEnum {
  Fail = 'fail',
  Init = 'init',
  Success = 'success'
}
