# Function inferSearchQueryResultSchema

- inferSearchQueryResultSchema<
  T extends
  ZodType<jObjectLittle, ZodTypeDef, jObjectLittle> = ZodType<
  jObjectLittle,
  ZodTypeDef,
  jObjectLittle,
  >,
  >(
  type?: T,
  ): ZodObject<
  {
  categories: ZodArray<
  ZodObject<
  ZodShape<SearchCategoryValue>,
  "strip",
  ZodTypeAny,
  SearchCategoryValue,
  SearchCategoryValue,
  >,
  "many",
  >;
  count: ZodNumber;
  facets: ZodArray<
  ZodObject<
  ZodShape<SearchFacetValueModel>,
  "strip",
  ZodTypeAny,
  SearchFacetValueModel,
  SearchFacetValueModel,
  >,
  "many",
  >;
  results: ZodArray<
  | ZodObject<
  ZodShape<jObjectBase> & { _url: ZodString; title: ZodString },
  "strip",
  ZodTypeAny,
  jObjectLittle,
  jObjectLittle,
  >
  | T,
  "many",
  >;
  start: ZodNumber;
  },
  "strip",
  ZodTypeAny,
  {
  categories: SearchCategoryValue[];
  count: number;
  facets: SearchFacetValueModel[];
  results: (
  | ZodObject<
  ZodShape<jObjectBase> & { _url: ZodString; title: ZodString },
  "strip",
  ZodTypeAny,
  jObjectLittle,
  jObjectLittle,
  >
  | T
  )["_output"][];
  start: number;
  },
  {
  categories: SearchCategoryValue[];
  count: number;
  facets: SearchFacetValueModel[];
  results: (
  | ZodObject<
  ZodShape<jObjectBase> & { _url: ZodString; title: ZodString },
  "strip",
  ZodTypeAny,
  jObjectLittle,
  jObjectLittle,
  >
  | T
  )["_input"][];
  start: number;
  },
  >

  #### Type Parameters

  - T extends ZodType<jObjectLittle, ZodTypeDef, jObjectLittle> = ZodType<jObjectLittle, ZodTypeDef, jObjectLittle>

  #### Parameters

  - `Optional` type: T

  #### Returns ZodObject<
  {
  categories: ZodArray<
  ZodObject<
  ZodShape<SearchCategoryValue>,
  "strip",
  ZodTypeAny,
  SearchCategoryValue,
  SearchCategoryValue,
  >,
  "many",
  >;
  count: ZodNumber;
  facets: ZodArray<
  ZodObject<
  ZodShape<SearchFacetValueModel>,
  "strip",
  ZodTypeAny,
  SearchFacetValueModel,
  SearchFacetValueModel,
  >,
  "many",
  >;
  results: ZodArray<
  | ZodObject<
  ZodShape<jObjectBase> & { _url: ZodString; title: ZodString },
  "strip",
  ZodTypeAny,
  jObjectLittle,
  jObjectLittle,
  >
  | T,
  "many",
  >;
  start: ZodNumber;
  },
  "strip",
  ZodTypeAny,
  {
  categories: SearchCategoryValue[];
  count: number;
  facets: SearchFacetValueModel[];
  results: (
  | ZodObject<
  ZodShape<jObjectBase> & { _url: ZodString; title: ZodString },
  "strip",
  ZodTypeAny,
  jObjectLittle,
  jObjectLittle,
  >
  | T
  )["_output"][];
  start: number;
  },
  {
  categories: SearchCategoryValue[];
  count: number;
  facets: SearchFacetValueModel[];
  results: (
  | ZodObject<
  ZodShape<jObjectBase> & { _url: ZodString; title: ZodString },
  "strip",
  ZodTypeAny,
  jObjectLittle,
  jObjectLittle,
  >
  | T
  )["_input"][];
  start: number;
  },
  >

  - Defined in jamespot-user-api/src/types/search.ts:282