Skip to content

Type error for parameter with explode #45

Closed
@anantoghosh

Description

@anantoghosh

Getting type error in addQueryParams
using typescript 3.9

this.request<any, any>(`/something/${this.addQueryParams(query)}`, "GET", params, null)
Argument of type '{ params?: QueryParams | undefined; } | undefined' is not assignable to parameter of type 'Record<string, string | number | boolean | string[] | number[] | undefined> | undefined'.
  Type '{ params?: QueryParams | undefined; }' is not assignable to type 'Record<string, string | number | boolean | string[] | number[] | undefined>'.
    Property 'params' is incompatible with index signature.
      Type 'QueryParams | undefined' is not assignable to type 'string | number | boolean | string[] | number[] | undefined'.
        Type 'QueryParams' is not assignable to type 'string | number | boolean | string[] | number[] | undefined'.
          Type 'QueryParams' is missing the following properties from type 'number[]': length, pop, push, concat, and 28 more.

where QueryParams is generated as

export interface QueryParams {
  /**
   * Page number
   */
  page?: number | null;

  /**
   * Page size
   */
  "page-size"?: number | null;
}
openapi: 3.0.1
info:
  title: API
  description: Documentation
  version: "0.1"
paths:
  /something/:
    get:
      operationId: gets
      parameters:
      - name: params
        in: query
        required: false
        explode: true
        schema:
          $ref: '#/components/schemas/QueryParams'

components:
  schemas:
    QueryParams:
      type: object
      properties:
        page:
          minimum: 0
          type: integer
          description: Page number
          format: int32
          nullable: true
        page-size:
          minimum: 0
          type: integer
          description: Page size
          format: int32
          nullable: true

With explode set the query url would have ?page=0&page-size=0
Any help would be appreciated.

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions