import { GraphQLClient } from 'graphql-request' import * as Dom from 'graphql-request/dist/types.dom' import gql from 'graphql-tag' export type Maybe = T | null export type InputMaybe = Maybe export type Exact = { [K in keyof T]: T[K] } export type MakeOptional = Omit & { [SubKey in K]?: Maybe } export type MakeMaybe = Omit & { [SubKey in K]: Maybe } /** All built-in and custom scalars, mapped to their actual values */ export type Scalars = { ID: string String: string Boolean: boolean Int: number Float: number /** Represents `true` or `false` values. */ BooleanType: any CustomData: any /** A ISO 8601 compliant date value */ Date: any /** A ISO 8601 compliant datetime value */ DateTime: any /** Represents signed double-precision fractional values as specified by [IEEE 754](http://en.wikipedia.org/wiki/IEEE_floating_point). */ FloatType: any /** Represents non-fractional signed whole numeric values. Int can represent values between -(2^31) and 2^31 - 1. */ IntType: any ItemId: any JsonField: any MetaTagAttributes: any UploadId: any } export type AuthorModelFilter = { OR?: InputMaybe>> _createdAt?: InputMaybe _firstPublishedAt?: InputMaybe _isValid?: InputMaybe _publicationScheduledAt?: InputMaybe _publishedAt?: InputMaybe _status?: InputMaybe _unpublishingScheduledAt?: InputMaybe _updatedAt?: InputMaybe createdAt?: InputMaybe id?: InputMaybe name?: InputMaybe updatedAt?: InputMaybe } export enum AuthorModelOrderBy { _createdAt_ASC = '_createdAt_ASC', _createdAt_DESC = '_createdAt_DESC', _firstPublishedAt_ASC = '_firstPublishedAt_ASC', _firstPublishedAt_DESC = '_firstPublishedAt_DESC', _isValid_ASC = '_isValid_ASC', _isValid_DESC = '_isValid_DESC', _publicationScheduledAt_ASC = '_publicationScheduledAt_ASC', _publicationScheduledAt_DESC = '_publicationScheduledAt_DESC', _publishedAt_ASC = '_publishedAt_ASC', _publishedAt_DESC = '_publishedAt_DESC', _status_ASC = '_status_ASC', _status_DESC = '_status_DESC', _unpublishingScheduledAt_ASC = '_unpublishingScheduledAt_ASC', _unpublishingScheduledAt_DESC = '_unpublishingScheduledAt_DESC', _updatedAt_ASC = '_updatedAt_ASC', _updatedAt_DESC = '_updatedAt_DESC', createdAt_ASC = 'createdAt_ASC', createdAt_DESC = 'createdAt_DESC', id_ASC = 'id_ASC', id_DESC = 'id_DESC', name_ASC = 'name_ASC', name_DESC = 'name_DESC', updatedAt_ASC = 'updatedAt_ASC', updatedAt_DESC = 'updatedAt_DESC' } /** Record of type Author (author) */ export type AuthorRecord = { __typename?: 'AuthorRecord' _createdAt: Scalars['DateTime'] _firstPublishedAt?: Maybe _isValid: Scalars['BooleanType'] _modelApiKey: Scalars['String'] _publicationScheduledAt?: Maybe _publishedAt?: Maybe /** SEO meta tags */ _seoMetaTags: Array _status: ItemStatus _unpublishingScheduledAt?: Maybe _updatedAt: Scalars['DateTime'] createdAt: Scalars['DateTime'] id: Scalars['ItemId'] name?: Maybe updatedAt: Scalars['DateTime'] } /** Record of type Author (author) */ export type AuthorRecord_SeoMetaTagsArgs = { locale?: InputMaybe } export type BlogPostModelContentBlocksField = | CtaRecord | ImageRecord | Callout01Record | Callout02Record export type BlogPostModelContentField = { __typename?: 'BlogPostModelContentField' blocks: Array links: Array value: Scalars['JsonField'] } export type BlogPostModelFilter = { OR?: InputMaybe>> _createdAt?: InputMaybe _firstPublishedAt?: InputMaybe _isValid?: InputMaybe _publicationScheduledAt?: InputMaybe _publishedAt?: InputMaybe _status?: InputMaybe _unpublishingScheduledAt?: InputMaybe _updatedAt?: InputMaybe author?: InputMaybe category?: InputMaybe content?: InputMaybe createdAt?: InputMaybe date?: InputMaybe id?: InputMaybe image?: InputMaybe slug?: InputMaybe title?: InputMaybe updatedAt?: InputMaybe } export enum BlogPostModelOrderBy { _createdAt_ASC = '_createdAt_ASC', _createdAt_DESC = '_createdAt_DESC', _firstPublishedAt_ASC = '_firstPublishedAt_ASC', _firstPublishedAt_DESC = '_firstPublishedAt_DESC', _isValid_ASC = '_isValid_ASC', _isValid_DESC = '_isValid_DESC', _publicationScheduledAt_ASC = '_publicationScheduledAt_ASC', _publicationScheduledAt_DESC = '_publicationScheduledAt_DESC', _publishedAt_ASC = '_publishedAt_ASC', _publishedAt_DESC = '_publishedAt_DESC', _status_ASC = '_status_ASC', _status_DESC = '_status_DESC', _unpublishingScheduledAt_ASC = '_unpublishingScheduledAt_ASC', _unpublishingScheduledAt_DESC = '_unpublishingScheduledAt_DESC', _updatedAt_ASC = '_updatedAt_ASC', _updatedAt_DESC = '_updatedAt_DESC', createdAt_ASC = 'createdAt_ASC', createdAt_DESC = 'createdAt_DESC', date_ASC = 'date_ASC', date_DESC = 'date_DESC', id_ASC = 'id_ASC', id_DESC = 'id_DESC', slug_ASC = 'slug_ASC', slug_DESC = 'slug_DESC', title_ASC = 'title_ASC', title_DESC = 'title_DESC', updatedAt_ASC = 'updatedAt_ASC', updatedAt_DESC = 'updatedAt_DESC' } /** Record of type Blog Post (blog_post) */ export type BlogPostRecord = { __typename?: 'BlogPostRecord' _createdAt: Scalars['DateTime'] _firstPublishedAt?: Maybe _isValid: Scalars['BooleanType'] _modelApiKey: Scalars['String'] _publicationScheduledAt?: Maybe _publishedAt?: Maybe /** SEO meta tags */ _seoMetaTags: Array _status: ItemStatus _unpublishingScheduledAt?: Maybe _updatedAt: Scalars['DateTime'] author?: Maybe category: Array content?: Maybe createdAt: Scalars['DateTime'] date?: Maybe id: Scalars['ItemId'] image?: Maybe slug?: Maybe title?: Maybe updatedAt: Scalars['DateTime'] } /** Record of type Blog Post (blog_post) */ export type BlogPostRecord_SeoMetaTagsArgs = { locale?: InputMaybe } /** Specifies how to filter Boolean fields */ export type BooleanFilter = { /** Search for records with an exact match */ eq?: InputMaybe } export type CategoryModelFilter = { OR?: InputMaybe>> _createdAt?: InputMaybe _firstPublishedAt?: InputMaybe _isValid?: InputMaybe _publicationScheduledAt?: InputMaybe _publishedAt?: InputMaybe _status?: InputMaybe _unpublishingScheduledAt?: InputMaybe _updatedAt?: InputMaybe createdAt?: InputMaybe id?: InputMaybe slug?: InputMaybe title?: InputMaybe updatedAt?: InputMaybe } export enum CategoryModelOrderBy { _createdAt_ASC = '_createdAt_ASC', _createdAt_DESC = '_createdAt_DESC', _firstPublishedAt_ASC = '_firstPublishedAt_ASC', _firstPublishedAt_DESC = '_firstPublishedAt_DESC', _isValid_ASC = '_isValid_ASC', _isValid_DESC = '_isValid_DESC', _publicationScheduledAt_ASC = '_publicationScheduledAt_ASC', _publicationScheduledAt_DESC = '_publicationScheduledAt_DESC', _publishedAt_ASC = '_publishedAt_ASC', _publishedAt_DESC = '_publishedAt_DESC', _status_ASC = '_status_ASC', _status_DESC = '_status_DESC', _unpublishingScheduledAt_ASC = '_unpublishingScheduledAt_ASC', _unpublishingScheduledAt_DESC = '_unpublishingScheduledAt_DESC', _updatedAt_ASC = '_updatedAt_ASC', _updatedAt_DESC = '_updatedAt_DESC', createdAt_ASC = 'createdAt_ASC', createdAt_DESC = 'createdAt_DESC', id_ASC = 'id_ASC', id_DESC = 'id_DESC', slug_ASC = 'slug_ASC', slug_DESC = 'slug_DESC', title_ASC = 'title_ASC', title_DESC = 'title_DESC', updatedAt_ASC = 'updatedAt_ASC', updatedAt_DESC = 'updatedAt_DESC' } /** Record of type Category (category) */ export type CategoryRecord = { __typename?: 'CategoryRecord' _createdAt: Scalars['DateTime'] _firstPublishedAt?: Maybe _isValid: Scalars['BooleanType'] _modelApiKey: Scalars['String'] _publicationScheduledAt?: Maybe _publishedAt?: Maybe /** SEO meta tags */ _seoMetaTags: Array _status: ItemStatus _unpublishingScheduledAt?: Maybe _updatedAt: Scalars['DateTime'] createdAt: Scalars['DateTime'] id: Scalars['ItemId'] slug?: Maybe title?: Maybe updatedAt: Scalars['DateTime'] } /** Record of type Category (category) */ export type CategoryRecord_SeoMetaTagsArgs = { locale?: InputMaybe } export type CollectionMetadata = { __typename?: 'CollectionMetadata' count: Scalars['IntType'] } export enum ColorBucketType { black = 'black', blue = 'blue', brown = 'brown', cyan = 'cyan', green = 'green', grey = 'grey', orange = 'orange', pink = 'pink', purple = 'purple', red = 'red', white = 'white', yellow = 'yellow' } export type ColorField = { __typename?: 'ColorField' alpha?: Maybe blue?: Maybe green?: Maybe hex?: Maybe red?: Maybe } /** Specifies how to filter by creation datetime */ export type CreatedAtFilter = { /** Filter records with a value that's within the specified minute range. Seconds and milliseconds are truncated from the argument. */ eq?: InputMaybe /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records with a value that's strictly greater than the one specified. Seconds and milliseconds are truncated from the argument. */ gt?: InputMaybe /** Filter records with a value that's greater than or equal to than the one specified. Seconds and milliseconds are truncated from the argument. */ gte?: InputMaybe /** Filter records with a value that's less than the one specified. Seconds and milliseconds are truncated from the argument. */ lt?: InputMaybe /** Filter records with a value that's less or equal than the one specified. Seconds and milliseconds are truncated from the argument. */ lte?: InputMaybe /** Filter records with a value that's outside the specified minute range. Seconds and milliseconds are truncated from the argument. */ neq?: InputMaybe } /** Record of type Cta (cta) */ export type CtaRecord = { __typename?: 'CtaRecord' _createdAt: Scalars['DateTime'] _firstPublishedAt?: Maybe _isValid: Scalars['BooleanType'] _modelApiKey: Scalars['String'] _publicationScheduledAt?: Maybe _publishedAt?: Maybe /** SEO meta tags */ _seoMetaTags: Array _status: ItemStatus _unpublishingScheduledAt?: Maybe _updatedAt: Scalars['DateTime'] createdAt: Scalars['DateTime'] id: Scalars['ItemId'] label?: Maybe updatedAt: Scalars['DateTime'] url?: Maybe } export type Callout01Record = { __typename?: 'Callout01Record' _createdAt: Scalars['DateTime'] _firstPublishedAt?: Maybe _isValid: Scalars['BooleanType'] _modelApiKey: Scalars['String'] _publicationScheduledAt?: Maybe _publishedAt?: Maybe /** SEO meta tags */ _seoMetaTags: Array _status: ItemStatus _unpublishingScheduledAt?: Maybe _updatedAt: Scalars['DateTime'] createdAt: Scalars['DateTime'] id: Scalars['ItemId'] text?: Maybe updatedAt: Scalars['DateTime'] } export type Callout02Record = { __typename?: 'Callout01Record' _createdAt: Scalars['DateTime'] _firstPublishedAt?: Maybe _isValid: Scalars['BooleanType'] _modelApiKey: Scalars['String'] _publicationScheduledAt?: Maybe _publishedAt?: Maybe /** SEO meta tags */ _seoMetaTags: Array _status: ItemStatus _unpublishingScheduledAt?: Maybe _updatedAt: Scalars['DateTime'] createdAt: Scalars['DateTime'] id: Scalars['ItemId'] text?: Maybe updatedAt: Scalars['DateTime'] } /** Record of type Cta (cta) */ export type CtaRecord_SeoMetaTagsArgs = { locale?: InputMaybe } /** Specifies how to filter Date fields */ export type DateFilter = { /** Search for records with an exact match */ eq?: InputMaybe /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records with a value that's strictly greater than the one specified */ gt?: InputMaybe /** Filter records with a value that's greater than or equal to the one specified */ gte?: InputMaybe /** Filter records with a value that's less than the one specified */ lt?: InputMaybe /** Filter records with a value that's less or equal than the one specified */ lte?: InputMaybe /** Exclude records with an exact match */ neq?: InputMaybe } export enum FaviconType { appleTouchIcon = 'appleTouchIcon', icon = 'icon', msApplication = 'msApplication' } export type FileField = { __typename?: 'FileField' _createdAt: Scalars['DateTime'] _updatedAt: Scalars['DateTime'] alt?: Maybe author?: Maybe basename: Scalars['String'] blurUpThumb?: Maybe blurhash?: Maybe colors: Array> copyright?: Maybe customData?: Maybe exifInfo?: Maybe filename: Scalars['String'] focalPoint?: Maybe format: Scalars['String'] height?: Maybe id: Scalars['UploadId'] md5: Scalars['String'] mimeType: Scalars['String'] notes?: Maybe responsiveImage?: Maybe size: Scalars['IntType'] smartTags: Array> tags: Array> title?: Maybe url: Scalars['String'] video?: Maybe width?: Maybe } export type FileFieldAltArgs = { fallbackLocales?: InputMaybe> locale?: InputMaybe } export type FileFieldBlurUpThumbArgs = { imgixParams?: InputMaybe punch?: InputMaybe quality?: InputMaybe size?: InputMaybe } export type FileFieldCustomDataArgs = { fallbackLocales?: InputMaybe> locale?: InputMaybe } export type FileFieldFocalPointArgs = { fallbackLocales?: InputMaybe> locale?: InputMaybe } export type FileFieldResponsiveImageArgs = { fallbackLocales?: InputMaybe> imgixParams?: InputMaybe locale?: InputMaybe sizes?: InputMaybe } export type FileFieldTitleArgs = { fallbackLocales?: InputMaybe> locale?: InputMaybe } export type FileFieldUrlArgs = { imgixParams?: InputMaybe } /** Specifies how to filter Single-file/image fields */ export type FileFilter = { /** Search for records with an exact match. The specified value must be an Upload ID */ eq?: InputMaybe /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records that have one of the specified uploads */ in?: InputMaybe>> /** Exclude records with an exact match. The specified value must be an Upload ID */ neq?: InputMaybe /** Filter records that do not have one of the specified uploads */ notIn?: InputMaybe>> } export type GlobalSeoField = { __typename?: 'GlobalSeoField' facebookPageUrl?: Maybe fallbackSeo?: Maybe siteName?: Maybe titleSuffix?: Maybe twitterAccount?: Maybe } /** Record of type Image (image) */ export type ImageRecord = { __typename?: 'ImageRecord' _createdAt: Scalars['DateTime'] _firstPublishedAt?: Maybe _isValid: Scalars['BooleanType'] _modelApiKey: Scalars['String'] _publicationScheduledAt?: Maybe _publishedAt?: Maybe /** SEO meta tags */ _seoMetaTags: Array _status: ItemStatus _unpublishingScheduledAt?: Maybe _updatedAt: Scalars['DateTime'] asset?: Maybe createdAt: Scalars['DateTime'] id: Scalars['ItemId'] title?: Maybe updatedAt: Scalars['DateTime'] } /** Record of type Image (image) */ export type ImageRecord_SeoMetaTagsArgs = { locale?: InputMaybe } export type ImgixParams = { /** * Aspect Ratio * * Specifies an aspect ratio to maintain when resizing and cropping the image * * Depends on: `fit=crop` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/ar) */ ar?: InputMaybe /** * Automatic * * Applies automatic enhancements to images. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/auto) */ auto?: InputMaybe> /** * Background Color * * Colors the background of padded and partially-transparent images. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/bg) */ bg?: InputMaybe /** * Blend * * Specifies the location of the blend image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend) */ blend?: InputMaybe /** * Blend Align * * Changes the blend alignment relative to the parent image. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-align) */ blendAlign?: InputMaybe> /** * Blend Alpha * * Changes the alpha of the blend image. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-alpha) */ blendAlpha?: InputMaybe /** * Blend Color * * Specifies a color to use when applying the blend. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-color) */ blendColor?: InputMaybe /** * Blend Crop * * Specifies the type of crop for blend images. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-crop) */ blendCrop?: InputMaybe> /** * Blend Fit * * Specifies the fit mode for blend images. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-fit) */ blendFit?: InputMaybe /** * Blend Height * * Adjusts the height of the blend image. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-h) */ blendH?: InputMaybe /** * Blend Mode * * Sets the blend mode for a blend image. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-mode) */ blendMode?: InputMaybe /** * Blend Padding * * Applies padding to the blend image. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-pad) */ blendPad?: InputMaybe /** * Blend Size * * Adjusts the size of the blend image. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-size) */ blendSize?: InputMaybe /** * Blend Width * * Adjusts the width of the blend image. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-w) */ blendW?: InputMaybe /** * Blend X Position * * Adjusts the x-offset of the blend image relative to its parent. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-x) */ blendX?: InputMaybe /** * Blend Y Position * * Adjusts the y-offset of the blend image relative to its parent. * * Depends on: `blend` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/blending/blend-y) */ blendY?: InputMaybe /** * Gaussian Blur * * Applies a gaussian blur to an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/stylize/blur) */ blur?: InputMaybe /** * Border Size & Color * * Applies a border to an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/border) */ border?: InputMaybe /** * Border Bottom * * Sets bottom border of an image. * * Depends on: `border` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/border-bottom) */ borderBottom?: InputMaybe /** * Border Left * * Sets left border of an image. * * Depends on: `border` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/border-left) */ borderLeft?: InputMaybe /** * Outer Border Radius * * Sets the outer radius of the image's border in pixels. * * Depends on: `border` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/border-radius) */ borderRadius?: InputMaybe /** * Inner Border Radius * * Sets the inner radius of the image's border in pixels. * * Depends on: `border` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/border-radius-inner) */ borderRadiusInner?: InputMaybe /** * Border Right * * Sets right border of an image. * * Depends on: `border` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/border-right) */ borderRight?: InputMaybe /** * Border Top * * Sets top border of an image. * * Depends on: `border` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/border-top) */ borderTop?: InputMaybe /** * Brightness * * Adjusts the brightness of the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/bri) */ bri?: InputMaybe /** * Client Hints * * Sets one or more Client-Hints headers * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/ch) */ ch?: InputMaybe> /** * Chroma Subsampling * * Specifies the output chroma subsampling rate. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/chromasub) */ chromasub?: InputMaybe /** * Color Quantization * * Limits the number of unique colors in an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/colorquant) */ colorquant?: InputMaybe /** * Palette Color Count * * Specifies how many colors to include in a palette-extraction response. * * Depends on: `palette` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/color-palette/colors) */ colors?: InputMaybe /** * Contrast * * Adjusts the contrast of the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/con) */ con?: InputMaybe /** * Mask Corner Radius * * Specifies the radius value for a rounded corner mask. * * Depends on: `mask=corners` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/mask/corner-radius) */ cornerRadius?: InputMaybe /** * Crop Mode * * Specifies how to crop an image. * * Depends on: `fit=crop` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/crop) */ crop?: InputMaybe> /** * Color Space * * Specifies the color space of the output image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/cs) */ cs?: InputMaybe /** * Download * * Forces a URL to use send-file in its response. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/dl) */ dl?: InputMaybe /** * Dots Per Inch * * Sets the DPI value in the EXIF header. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/dpi) */ dpi?: InputMaybe /** * Device Pixel Ratio * * Adjusts the device-pixel ratio of the output image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/dpr) */ dpr?: InputMaybe /** * Duotone * * Applies a duotone effect to the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/stylize/duotone) */ duotone?: InputMaybe /** * Duotone Alpha * * Changes the alpha of the duotone effect atop the source image. * * Depends on: `duotone` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/stylize/duotone-alpha) */ duotoneAlpha?: InputMaybe /** * Exposure * * Adjusts the exposure of the output image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/exp) */ exp?: InputMaybe /** * Url Expiration Timestamp * * A Unix timestamp specifying a UTC time. Requests made to this URL after that time will output a 404 status code. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/expires) */ expires?: InputMaybe /** * Face Index * * Selects a face to crop to. * * Depends on: `fit=facearea` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/face-detection/faceindex) */ faceindex?: InputMaybe /** * Face Padding * * Adjusts padding around a selected face. * * Depends on: `fit=facearea` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/face-detection/facepad) */ facepad?: InputMaybe /** * Json Face Data * * Specifies that face data should be included in output when combined with `fm=json`. * * Depends on: `fm=json` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/face-detection/faces) */ faces?: InputMaybe /** * Fill Mode * * Determines how to fill in additional space created by the fit setting * * Depends on: `fit` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/fill/fill) */ fill?: InputMaybe /** * Fill Color * * Sets the fill color for images with additional space created by the fit setting * * Depends on: `fill=solid` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/fill/fill-color) */ fillColor?: InputMaybe /** * Resize Fit Mode * * Specifies how to map the source image to the output image dimensions. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/fit) */ fit?: InputMaybe /** * Flip Axis * * Flips an image on a specified axis. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/rotation/flip) */ flip?: InputMaybe /** * Output Format * * Changes the format of the output image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/fm) */ fm?: InputMaybe /** * Focal Point Debug * * Displays crosshairs identifying the location of the set focal point * * Depends on: `fit=crop`, `crop=focalpoint` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/focalpoint-crop/fp-debug) */ fpDebug?: InputMaybe /** * Focal Point X Position * * Sets the relative horizontal value for the focal point of an image * * Depends on: `fit=crop`, `crop=focalpoint` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/focalpoint-crop/fp-x) */ fpX?: InputMaybe /** * Focal Point Y Position * * Sets the relative vertical value for the focal point of an image * * Depends on: `fit=crop`, `crop=focalpoint` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/focalpoint-crop/fp-y) */ fpY?: InputMaybe /** * Focal Point Zoom * * Sets the relative zoom value for the focal point of an image * * Depends on: `fit=crop`, `crop=focalpoint` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/focalpoint-crop/fp-z) */ fpZ?: InputMaybe /** * Gamma * * Adjusts the gamma of the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/gam) */ gam?: InputMaybe /** * Grid Colors * * Sets grid colors for the transparency checkerboard grid. * * Depends on: `transparency` */ gridColors?: InputMaybe /** * Grid Size * * Sets grid size for the transparency checkerboard grid. * * Depends on: `transparency` */ gridSize?: InputMaybe /** * Image Height * * Adjusts the height of the output image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/h) */ h?: InputMaybe /** * Highlight * * Adjusts the highlights of the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/high) */ high?: InputMaybe /** * Halftone * * Applies a half-tone effect to the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/stylize/htn) */ htn?: InputMaybe /** * Hue Shift * * Adjusts the hue of the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/hue) */ hue?: InputMaybe /** * Invert * * Inverts the colors on the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/invert) */ invert?: InputMaybe /** * Iptc Passthrough * * Determine if IPTC data should be passed for JPEG images. */ iptc?: InputMaybe /** * Lossless Compression * * Specifies that the output image should be a lossless variant. * * Depends on: `fm=webp`, `fm=jxr` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/lossless) */ lossless?: InputMaybe /** * Watermark Image Url * * Specifies the location of the watermark image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark) */ mark?: InputMaybe /** * Watermark Alignment Mode * * Changes the watermark alignment relative to the parent image. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-align) */ markAlign?: InputMaybe> /** * Watermark Alpha * * Changes the alpha of the watermark image. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-alpha) */ markAlpha?: InputMaybe /** * Watermark Base Url * * Changes base URL of the watermark image. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-base) */ markBase?: InputMaybe /** * Watermark Fit Mode * * Specifies the fit mode for watermark images. * * Depends on: `mark`, `markw`, `markh` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-fit) */ markFit?: InputMaybe /** * Watermark Height * * Adjusts the height of the watermark image. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-h) */ markH?: InputMaybe /** * Watermark Padding * * Applies padding to the watermark image. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-pad) */ markPad?: InputMaybe /** * Watermark Rotation * * Rotates a watermark or tiled watermarks by a specified number of degrees. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-rot) */ markRot?: InputMaybe /** * Watermark Scale * * Adjusts the scale of the watermark image. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-scale) */ markScale?: InputMaybe /** * Watermark Tile * * Adds tiled watermark. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-tile) */ markTile?: InputMaybe /** * Watermark Width * * Adjusts the width of the watermark image. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-w) */ markW?: InputMaybe /** * Watermark X Position * * Adjusts the x-offset of the watermark image relative to its parent. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-x) */ markX?: InputMaybe /** * Watermark Y Position * * Adjusts the y-offset of the watermark image relative to its parent. * * Depends on: `mark` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/watermark/mark-y) */ markY?: InputMaybe /** * Mask Type * * Defines the type of mask and specifies the URL if that type is selected. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/mask) */ mask?: InputMaybe /** * Mask Background Color * * Colors the background of the transparent mask area of images * * Depends on: `mask` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/mask/mask-bg) */ maskBg?: InputMaybe /** * Maximum Height * * Specifies the maximum height of the output image in pixels. * * Depends on: `fit=crop` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/max-height) */ maxH?: InputMaybe /** * Maximum Width * * Specifies the maximum width of the output image in pixels. * * Depends on: `fit=crop` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/max-width) */ maxW?: InputMaybe /** * Minimum Height * * Specifies the minimum height of the output image in pixels. * * Depends on: `fit=crop` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/min-height) */ minH?: InputMaybe /** * Minimum Width * * Specifies the minimum width of the output image in pixels. * * Depends on: `fit=crop` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/min-width) */ minW?: InputMaybe /** * Monochrome * * Applies a monochrome effect to the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/stylize/monochrome) */ monochrome?: InputMaybe /** * Noise Reduction Bound * * Reduces the noise in an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/noise-reduction/nr) */ nr?: InputMaybe /** * Noise Reduction Sharpen * * Provides a threshold by which to sharpen an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/noise-reduction/nrs) */ nrs?: InputMaybe /** * Orientation * * Changes the image orientation. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/rotation/orient) */ orient?: InputMaybe /** * Padding * * Pads an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/pad) */ pad?: InputMaybe /** * Padding Bottom * * Sets bottom padding of an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/pad-bottom) */ padBottom?: InputMaybe /** * Padding Left * * Sets left padding of an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/pad-left) */ padLeft?: InputMaybe /** * Padding Right * * Sets right padding of an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/pad-right) */ padRight?: InputMaybe /** * Padding Top * * Sets top padding of an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/border-and-padding/pad-top) */ padTop?: InputMaybe /** * Pdf Page Number * * Selects a page from a PDF for display. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/pdf/page) */ page?: InputMaybe /** * Color Palette Extraction * * Specifies an output format for palette-extraction. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/color-palette/palette) */ palette?: InputMaybe /** * Pdf Annotation * * Enables or disables PDF annotation. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/pdf/pdf-annotation) */ pdfAnnotation?: InputMaybe /** * Css Prefix * * Specifies a CSS prefix for all classes in palette-extraction. * * Depends on: `palette=css` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/color-palette/prefix) */ prefix?: InputMaybe /** * Pixellate * * Applies a pixelation effect to an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/stylize/px) */ px?: InputMaybe /** * Output Quality * * Adjusts the quality of an output image. * * Depends on: `fm=jpg`, `fm=pjpg`, `fm=webp`, `fm=jxr` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/format/q) */ q?: InputMaybe /** * Source Rectangle Region * * Crops an image to a specified rectangle. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/rect) */ rect?: InputMaybe /** * Rotation * * Rotates an image by a specified number of degrees. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/rotation/rot) */ rot?: InputMaybe /** * Saturation * * Adjusts the saturation of an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/sat) */ sat?: InputMaybe /** * Sepia Tone * * Applies a sepia effect to an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/stylize/sepia) */ sepia?: InputMaybe /** * Shadow * * Adjusts the highlights of the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/shad) */ shad?: InputMaybe /** * Sharpen * * Adjusts the sharpness of the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/sharp) */ sharp?: InputMaybe /** * Transparency * * Adds checkerboard behind images which support transparency. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/fill/transparency) */ transparency?: InputMaybe /** * Trim Image * * Trims the source image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/trim/trim) */ trim?: InputMaybe /** * Trim Color * * Specifies a trim color on a trim operation. * * Depends on: `trim=color` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/trim/trim-color) */ trimColor?: InputMaybe /** * Trim Mean Difference * * Specifies the mean difference on a trim operation. * * Depends on: `trim=auto` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/trim/trim-md) */ trimMd?: InputMaybe /** * Trim Padding * * Pads the area of the source image before trimming. * * Depends on: `trim` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/trim/trim-pad) */ trimPad?: InputMaybe /** * Trim Standard Deviation * * Specifies the standard deviation on a trim operation. * * Depends on: `trim=auto` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/trim/trim-sd) */ trimSd?: InputMaybe /** * Trim Tolerance * * Specifies the tolerance on a trim operation. * * Depends on: `trim=color` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/trim/trim-tol) */ trimTol?: InputMaybe /** * Text String * * Sets the text string to render. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt) */ txt?: InputMaybe /** * Text Align * * Sets the vertical and horizontal alignment of rendered text relative to the base image. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-align) */ txtAlign?: InputMaybe> /** * Text Clipping Mode * * Sets the clipping properties of rendered text. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-clip) */ txtClip?: InputMaybe> /** * Text Color * * Specifies the color of rendered text. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-color) */ txtColor?: InputMaybe /** * Text Fit Mode * * Specifies the fit approach for rendered text. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-fit) */ txtFit?: InputMaybe /** * Text Font * * Selects a font for rendered text. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-font) */ txtFont?: InputMaybe /** * Text Leading * * Sets the leading (line spacing) for rendered text. Only works on the multi-line text endpoint. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/typesetting/txt-lead) */ txtLead?: InputMaybe /** * Text Ligatures * * Controls the level of ligature substitution * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-lig) */ txtLig?: InputMaybe /** * Text Outline * * Outlines the rendered text with a specified color. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-line) */ txtLine?: InputMaybe /** * Text Outline Color * * Specifies a text outline color. * * Depends on: `txt`, `txtline` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-line-color) */ txtLineColor?: InputMaybe /** * Text Padding * * Specifies the padding (in device-independent pixels) between a textbox and the edges of the base image. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-pad) */ txtPad?: InputMaybe /** * Text Shadow * * Applies a shadow to rendered text. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-shad) */ txtShad?: InputMaybe /** * Text Font Size * * Sets the font size of rendered text. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-size) */ txtSize?: InputMaybe /** * Text Tracking * * Sets the tracking (letter spacing) for rendered text. Only works on the multi-line text endpoint. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/typesetting/txt-track) */ txtTrack?: InputMaybe /** * Text Width * * Sets the width of rendered text. * * Depends on: `txt` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/text/txt-width) */ txtWidth?: InputMaybe /** * Unsharp Mask * * Sharpens the source image using an unsharp mask. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/usm) */ usm?: InputMaybe /** * Unsharp Mask Radius * * Specifies the radius for an unsharp mask operation. * * Depends on: `usm` * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/usmrad) */ usmrad?: InputMaybe /** * Vibrance * * Adjusts the vibrance of an image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/adjustment/vib) */ vib?: InputMaybe /** * Image Width * * Adjusts the width of the output image. * * [Open Imgix reference »](https://docs.imgix.com/apis/url/size/w) */ w?: InputMaybe } export enum ImgixParamsAuto { compress = 'compress', enhance = 'enhance', format = 'format', redeye = 'redeye' } export enum ImgixParamsBlendAlign { bottom = 'bottom', center = 'center', left = 'left', middle = 'middle', right = 'right', top = 'top' } export enum ImgixParamsBlendCrop { bottom = 'bottom', faces = 'faces', left = 'left', right = 'right', top = 'top' } export enum ImgixParamsBlendFit { clamp = 'clamp', clip = 'clip', crop = 'crop', max = 'max', scale = 'scale' } export enum ImgixParamsBlendMode { burn = 'burn', color = 'color', darken = 'darken', difference = 'difference', dodge = 'dodge', exclusion = 'exclusion', hardlight = 'hardlight', hue = 'hue', lighten = 'lighten', luminosity = 'luminosity', multiply = 'multiply', normal = 'normal', overlay = 'overlay', saturation = 'saturation', screen = 'screen', softlight = 'softlight' } export enum ImgixParamsBlendSize { inherit = 'inherit' } export enum ImgixParamsCh { dpr = 'dpr', saveData = 'saveData', width = 'width' } export enum ImgixParamsCrop { bottom = 'bottom', edges = 'edges', entropy = 'entropy', faces = 'faces', focalpoint = 'focalpoint', left = 'left', right = 'right', top = 'top' } export enum ImgixParamsCs { adobergb1998 = 'adobergb1998', srgb = 'srgb', strip = 'strip', tinysrgb = 'tinysrgb' } export enum ImgixParamsFill { blur = 'blur', solid = 'solid' } export enum ImgixParamsFit { clamp = 'clamp', clip = 'clip', crop = 'crop', facearea = 'facearea', fill = 'fill', fillmax = 'fillmax', max = 'max', min = 'min', scale = 'scale' } export enum ImgixParamsFlip { h = 'h', hv = 'hv', v = 'v' } export enum ImgixParamsFm { avif = 'avif', blurhash = 'blurhash', gif = 'gif', jp2 = 'jp2', jpg = 'jpg', json = 'json', jxr = 'jxr', mp4 = 'mp4', pjpg = 'pjpg', png = 'png', png8 = 'png8', png32 = 'png32', webm = 'webm', webp = 'webp' } export enum ImgixParamsIptc { allow = 'allow', block = 'block' } export enum ImgixParamsMarkAlign { bottom = 'bottom', center = 'center', left = 'left', middle = 'middle', right = 'right', top = 'top' } export enum ImgixParamsMarkFit { clip = 'clip', crop = 'crop', fill = 'fill', max = 'max', scale = 'scale' } export enum ImgixParamsMarkTile { grid = 'grid' } export enum ImgixParamsPalette { css = 'css', json = 'json' } export enum ImgixParamsTransparency { grid = 'grid' } export enum ImgixParamsTrim { auto = 'auto', color = 'color' } export enum ImgixParamsTxtAlign { bottom = 'bottom', center = 'center', left = 'left', middle = 'middle', right = 'right', top = 'top' } export enum ImgixParamsTxtClip { ellipsis = 'ellipsis', end = 'end', middle = 'middle', start = 'start' } export enum ImgixParamsTxtFit { max = 'max' } /** Specifies how to filter by usage */ export type InUseFilter = { /** Search uploads that are currently used by some record or not */ eq?: InputMaybe } /** Specifies how to filter by ID */ export type ItemIdFilter = { /** Search the record with the specified ID */ eq?: InputMaybe /** Search records with the specified IDs */ in?: InputMaybe>> /** Exclude the record with the specified ID */ neq?: InputMaybe /** Search records that do not have the specified IDs */ notIn?: InputMaybe>> } export enum ItemStatus { draft = 'draft', published = 'published', updated = 'updated' } /** Specifies how to filter Single-link fields */ export type LinkFilter = { /** Search for records with an exact match. The specified value must be a Record ID */ eq?: InputMaybe /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records linked to one of the specified records */ in?: InputMaybe>> /** Exclude records with an exact match. The specified value must be a Record ID */ neq?: InputMaybe /** Filter records not linked to one of the specified records */ notIn?: InputMaybe>> } /** Specifies how to filter Multiple-links fields */ export type LinksFilter = { /** Filter records linked to all of the specified records. The specified values must be Record IDs */ allIn?: InputMaybe>> /** Filter records linked to at least one of the specified records. The specified values must be Record IDs */ anyIn?: InputMaybe>> /** Search for records with an exact match. The specified values must be Record IDs */ eq?: InputMaybe>> /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records not linked to any of the specified records. The specified values must be Record IDs */ notIn?: InputMaybe>> } export enum MuxThumbnailFormatType { gif = 'gif', jpg = 'jpg', png = 'png' } /** Specifies how to filter by image orientation */ export type OrientationFilter = { /** Search uploads with the specified orientation */ eq?: InputMaybe /** Exclude uploads with the specified orientation */ neq?: InputMaybe } /** Specifies how to filter by publication datetime */ export type PublishedAtFilter = { /** Filter records with a value that's within the specified minute range. Seconds and milliseconds are truncated from the argument. */ eq?: InputMaybe /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records with a value that's strictly greater than the one specified. Seconds and milliseconds are truncated from the argument. */ gt?: InputMaybe /** Filter records with a value that's greater than or equal to than the one specified. Seconds and milliseconds are truncated from the argument. */ gte?: InputMaybe /** Filter records with a value that's less than the one specified. Seconds and milliseconds are truncated from the argument. */ lt?: InputMaybe /** Filter records with a value that's less or equal than the one specified. Seconds and milliseconds are truncated from the argument. */ lte?: InputMaybe /** Filter records with a value that's outside the specified minute range. Seconds and milliseconds are truncated from the argument. */ neq?: InputMaybe } /** The query root for this schema */ export type Query = { __typename?: 'Query' /** Returns meta information regarding a record collection */ _allAuthorsMeta: CollectionMetadata /** Returns meta information regarding a record collection */ _allBlogPostsMeta: CollectionMetadata /** Returns meta information regarding a record collection */ _allCategoriesMeta: CollectionMetadata /** Returns meta information regarding an assets collection */ _allUploadsMeta?: Maybe /** Returns the single instance record */ _site: Site /** Returns a collection of records */ allAuthors: Array /** Returns a collection of records */ allBlogPosts: Array /** Returns a collection of records */ allCategories: Array /** Returns a collection of assets */ allUploads: Array /** Returns a specific record */ author?: Maybe /** Returns a specific record */ blogPost?: Maybe /** Returns a specific record */ category?: Maybe /** Returns a specific asset */ upload?: Maybe } /** The query root for this schema */ export type Query_AllAuthorsMetaArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe locale?: InputMaybe } /** The query root for this schema */ export type Query_AllBlogPostsMetaArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe locale?: InputMaybe } /** The query root for this schema */ export type Query_AllCategoriesMetaArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe locale?: InputMaybe } /** The query root for this schema */ export type Query_AllUploadsMetaArgs = { filter?: InputMaybe locale?: InputMaybe } /** The query root for this schema */ export type Query_SiteArgs = { fallbackLocales?: InputMaybe> locale?: InputMaybe } /** The query root for this schema */ export type QueryAllAuthorsArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe first?: InputMaybe locale?: InputMaybe orderBy?: InputMaybe>> skip?: InputMaybe } /** The query root for this schema */ export type QueryAllBlogPostsArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe first?: InputMaybe locale?: InputMaybe orderBy?: InputMaybe>> skip?: InputMaybe } /** The query root for this schema */ export type QueryAllCategoriesArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe first?: InputMaybe locale?: InputMaybe orderBy?: InputMaybe>> skip?: InputMaybe } /** The query root for this schema */ export type QueryAllUploadsArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe first?: InputMaybe locale?: InputMaybe orderBy?: InputMaybe>> skip?: InputMaybe } /** The query root for this schema */ export type QueryAuthorArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe locale?: InputMaybe orderBy?: InputMaybe>> } /** The query root for this schema */ export type QueryBlogPostArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe locale?: InputMaybe orderBy?: InputMaybe>> } /** The query root for this schema */ export type QueryCategoryArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe locale?: InputMaybe orderBy?: InputMaybe>> } /** The query root for this schema */ export type QueryUploadArgs = { fallbackLocales?: InputMaybe> filter?: InputMaybe locale?: InputMaybe orderBy?: InputMaybe>> } /** Specifies how to filter by upload type */ export type ResolutionFilter = { /** Search uploads with the specified resolution */ eq?: InputMaybe /** Search uploads with the specified resolutions */ in?: InputMaybe>> /** Exclude uploads with the specified resolution */ neq?: InputMaybe /** Search uploads without the specified resolutions */ notIn?: InputMaybe>> } export enum ResolutionType { icon = 'icon', large = 'large', medium = 'medium', small = 'small' } export type ResponsiveImage = { __typename?: 'ResponsiveImage' alt?: Maybe aspectRatio: Scalars['FloatType'] base64?: Maybe bgColor?: Maybe height: Scalars['IntType'] sizes: Scalars['String'] src: Scalars['String'] srcSet: Scalars['String'] title?: Maybe webpSrcSet: Scalars['String'] width: Scalars['IntType'] } export type SeoField = { __typename?: 'SeoField' description?: Maybe image?: Maybe title?: Maybe twitterCard?: Maybe } export type Site = { __typename?: 'Site' favicon?: Maybe faviconMetaTags: Array globalSeo?: Maybe locales: Array } export type SiteFaviconMetaTagsArgs = { variants?: InputMaybe>> } export type SiteGlobalSeoArgs = { fallbackLocales?: InputMaybe> locale?: InputMaybe } export enum SiteLocale { en = 'en' } /** Specifies how to filter by status */ export type StatusFilter = { /** Search the record with the specified status */ eq?: InputMaybe /** Search records with the specified statuses */ in?: InputMaybe>> /** Exclude the record with the specified status */ neq?: InputMaybe /** Search records without the specified statuses */ notIn?: InputMaybe>> } /** Specifies how to filter Single-line string fields */ export type StringFilter = { /** Search for records with an exact match */ eq?: InputMaybe /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records that equal one of the specified values */ in?: InputMaybe>> /** Filter records with the specified field set as blank (null or empty string) */ isBlank?: InputMaybe /** Filter records based on a regular expression */ matches?: InputMaybe /** Exclude records with an exact match */ neq?: InputMaybe /** Filter records that do not equal one of the specified values */ notIn?: InputMaybe>> /** Exclude records based on a regular expression */ notMatches?: InputMaybe } export type StringMatchesFilter = { caseSensitive?: InputMaybe pattern: Scalars['String'] regexp?: InputMaybe } /** Specifies how to filter Structured Text fields */ export type StructuredTextFilter = { /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records with the specified field set as blank (null or single empty paragraph) */ isBlank?: InputMaybe /** Filter records based on a regular expression */ matches?: InputMaybe /** Exclude records based on a regular expression */ notMatches?: InputMaybe } export type Tag = { __typename?: 'Tag' attributes?: Maybe content?: Maybe tag: Scalars['String'] } /** Specifies how to filter by upload type */ export type TypeFilter = { /** Search uploads with the specified type */ eq?: InputMaybe /** Search uploads with the specified types */ in?: InputMaybe>> /** Exclude uploads with the specified type */ neq?: InputMaybe /** Search uploads without the specified types */ notIn?: InputMaybe>> } /** Specifies how to filter by update datetime */ export type UpdatedAtFilter = { /** Filter records with a value that's within the specified minute range. Seconds and milliseconds are truncated from the argument. */ eq?: InputMaybe /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter records with a value that's strictly greater than the one specified. Seconds and milliseconds are truncated from the argument. */ gt?: InputMaybe /** Filter records with a value that's greater than or equal to than the one specified. Seconds and milliseconds are truncated from the argument. */ gte?: InputMaybe /** Filter records with a value that's less than the one specified. Seconds and milliseconds are truncated from the argument. */ lt?: InputMaybe /** Filter records with a value that's less or equal than the one specified. Seconds and milliseconds are truncated from the argument. */ lte?: InputMaybe /** Filter records with a value that's outside the specified minute range. Seconds and milliseconds are truncated from the argument. */ neq?: InputMaybe } /** Specifies how to filter by default alt */ export type UploadAltFilter = { /** Search the uploads with the specified alt */ eq?: InputMaybe /** Filter uploads with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Search uploads with the specified values as default alt */ in?: InputMaybe>> /** Filter uploads based on a regular expression */ matches?: InputMaybe /** Exclude the uploads with the specified alt */ neq?: InputMaybe /** Search uploads that do not have the specified values as default alt */ notIn?: InputMaybe>> /** Exclude uploads based on a regular expression */ notMatches?: InputMaybe } /** Specifies how to filter by auhtor */ export type UploadAuthorFilter = { /** Filter uploads with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter uploads based on a regular expression */ matches?: InputMaybe /** Exclude uploads based on a regular expression */ notMatches?: InputMaybe } /** Specifies how to filter by basename */ export type UploadBasenameFilter = { /** Filter uploads based on a regular expression */ matches?: InputMaybe /** Exclude uploads based on a regular expression */ notMatches?: InputMaybe } /** Specifies how to filter by colors */ export type UploadColorsFilter = { /** Filter uploads that have all of the specified colors */ allIn?: InputMaybe>> /** Filter uploads that have at least one of the specified colors */ anyIn?: InputMaybe>> /** Filter uploads that have the specified colors */ contains?: InputMaybe /** Search for uploads with an exact match */ eq?: InputMaybe>> /** Filter uploads that do not have any of the specified colors */ notIn?: InputMaybe>> } /** Specifies how to filter by copyright */ export type UploadCopyrightFilter = { /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter uploads based on a regular expression */ matches?: InputMaybe /** Exclude uploads based on a regular expression */ notMatches?: InputMaybe } /** Specifies how to filter by creation datetime */ export type UploadCreatedAtFilter = { /** Search for uploads with an exact match */ eq?: InputMaybe /** Filter uploads with a value that's strictly greater than the one specified */ gt?: InputMaybe /** Filter uploads with a value that's greater than or equal to the one specified */ gte?: InputMaybe /** Filter uploads with a value that's less than the one specified */ lt?: InputMaybe /** Filter uploads with a value that's less or equal than the one specified */ lte?: InputMaybe /** Exclude uploads with an exact match */ neq?: InputMaybe } /** Specifies how to filter by filename */ export type UploadFilenameFilter = { /** Filter uploads based on a regular expression */ matches?: InputMaybe /** Exclude uploads based on a regular expression */ notMatches?: InputMaybe } export type UploadFilter = { OR?: InputMaybe>> _createdAt?: InputMaybe _updatedAt?: InputMaybe alt?: InputMaybe author?: InputMaybe basename?: InputMaybe colors?: InputMaybe copyright?: InputMaybe filename?: InputMaybe format?: InputMaybe height?: InputMaybe id?: InputMaybe inUse?: InputMaybe md5?: InputMaybe mimeType?: InputMaybe notes?: InputMaybe orientation?: InputMaybe resolution?: InputMaybe size?: InputMaybe smartTags?: InputMaybe tags?: InputMaybe title?: InputMaybe type?: InputMaybe width?: InputMaybe } /** Specifies how to filter by format */ export type UploadFormatFilter = { /** Search the asset with the specified format */ eq?: InputMaybe /** Search assets with the specified formats */ in?: InputMaybe>> /** Exclude the asset with the specified format */ neq?: InputMaybe /** Search assets that do not have the specified formats */ notIn?: InputMaybe>> } /** Specifies how to filter by height */ export type UploadHeightFilter = { /** Search assets with the specified height */ eq?: InputMaybe /** Search all assets larger than the specified height */ gt?: InputMaybe /** Search all assets larger or equal to the specified height */ gte?: InputMaybe /** Search all assets smaller than the specified height */ lt?: InputMaybe /** Search all assets larger or equal to the specified height */ lte?: InputMaybe /** Search assets that do not have the specified height */ neq?: InputMaybe } /** Specifies how to filter by ID */ export type UploadIdFilter = { /** Search the asset with the specified ID */ eq?: InputMaybe /** Search assets with the specified IDs */ in?: InputMaybe>> /** Exclude the asset with the specified ID */ neq?: InputMaybe /** Search assets that do not have the specified IDs */ notIn?: InputMaybe>> } /** Specifies how to filter by MD5 */ export type UploadMd5Filter = { /** Search the asset with the specified MD5 */ eq?: InputMaybe /** Search assets with the specified MD5s */ in?: InputMaybe>> /** Exclude the asset with the specified MD5 */ neq?: InputMaybe /** Search assets that do not have the specified MD5s */ notIn?: InputMaybe>> } /** Specifies how to filter by mime type */ export type UploadMimeTypeFilter = { /** Search the asset with the specified mime type */ eq?: InputMaybe /** Search assets with the specified mime types */ in?: InputMaybe>> /** Filter uploads based on a regular expression */ matches?: InputMaybe /** Exclude the asset with the specified mime type */ neq?: InputMaybe /** Search assets that do not have the specified mime types */ notIn?: InputMaybe>> /** Exclude uploads based on a regular expression */ notMatches?: InputMaybe } /** Specifies how to filter by notes */ export type UploadNotesFilter = { /** Filter records with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Filter uploads based on a regular expression */ matches?: InputMaybe /** Exclude uploads based on a regular expression */ notMatches?: InputMaybe } export enum UploadOrderBy { _createdAt_ASC = '_createdAt_ASC', _createdAt_DESC = '_createdAt_DESC', _updatedAt_ASC = '_updatedAt_ASC', _updatedAt_DESC = '_updatedAt_DESC', basename_ASC = 'basename_ASC', basename_DESC = 'basename_DESC', filename_ASC = 'filename_ASC', filename_DESC = 'filename_DESC', format_ASC = 'format_ASC', format_DESC = 'format_DESC', id_ASC = 'id_ASC', id_DESC = 'id_DESC', mimeType_ASC = 'mimeType_ASC', mimeType_DESC = 'mimeType_DESC', resolution_ASC = 'resolution_ASC', resolution_DESC = 'resolution_DESC', size_ASC = 'size_ASC', size_DESC = 'size_DESC' } export enum UploadOrientation { landscape = 'landscape', portrait = 'portrait', square = 'square' } /** Specifies how to filter by size */ export type UploadSizeFilter = { /** Search assets with the specified size (in bytes) */ eq?: InputMaybe /** Search all assets larger than the specified size (in bytes) */ gt?: InputMaybe /** Search all assets larger or equal to the specified size (in bytes) */ gte?: InputMaybe /** Search all assets smaller than the specified size (in bytes) */ lt?: InputMaybe /** Search all assets larger or equal to the specified size (in bytes) */ lte?: InputMaybe /** Search assets that do not have the specified size (in bytes) */ neq?: InputMaybe } /** Specifies how to filter by tags */ export type UploadTagsFilter = { /** Filter uploads linked to all of the specified tags */ allIn?: InputMaybe>> /** Filter uploads linked to at least one of the specified tags */ anyIn?: InputMaybe>> /** Filter uploads linked to the specified tag */ contains?: InputMaybe /** Search for uploads with an exact match */ eq?: InputMaybe>> /** Filter uploads not linked to any of the specified tags */ notIn?: InputMaybe>> } /** Specifies how to filter by default title */ export type UploadTitleFilter = { /** Search the asset with the specified title */ eq?: InputMaybe /** Filter assets with the specified field defined (i.e. with any value) or not */ exists?: InputMaybe /** Search assets with the specified as default title */ in?: InputMaybe>> /** Filter uploads based on a regular expression */ matches?: InputMaybe /** Exclude the asset with the specified title */ neq?: InputMaybe /** Search assets that do not have the specified as default title */ notIn?: InputMaybe>> /** Exclude uploads based on a regular expression */ notMatches?: InputMaybe } export enum UploadType { archive = 'archive', audio = 'audio', image = 'image', pdfdocument = 'pdfdocument', presentation = 'presentation', richtext = 'richtext', spreadsheet = 'spreadsheet', video = 'video' } /** Specifies how to filter by update datetime */ export type UploadUpdatedAtFilter = { /** Search for uploads with an exact match */ eq?: InputMaybe /** Filter uploads with a value that's strictly greater than the one specified */ gt?: InputMaybe /** Filter uploads with a value that's greater than or equal to the one specified */ gte?: InputMaybe /** Filter uploads with a value that's less than the one specified */ lt?: InputMaybe /** Filter uploads with a value that's less or equal than the one specified */ lte?: InputMaybe /** Exclude uploads with an exact match */ neq?: InputMaybe } export type UploadVideoField = { __typename?: 'UploadVideoField' duration: Scalars['Int'] framerate: Scalars['Int'] mp4Url?: Maybe muxAssetId: Scalars['String'] muxPlaybackId: Scalars['String'] streamingUrl: Scalars['String'] thumbnailUrl: Scalars['String'] } export type UploadVideoFieldMp4UrlArgs = { exactRes?: InputMaybe res?: InputMaybe } export type UploadVideoFieldThumbnailUrlArgs = { format?: InputMaybe } /** Specifies how to filter by width */ export type UploadWidthFilter = { /** Search assets with the specified width */ eq?: InputMaybe /** Search all assets larger than the specified width */ gt?: InputMaybe /** Search all assets larger or equal to the specified width */ gte?: InputMaybe /** Search all assets smaller than the specified width */ lt?: InputMaybe /** Search all assets larger or equal to the specified width */ lte?: InputMaybe /** Search assets that do not have the specified width */ neq?: InputMaybe } export enum VideoMp4Res { high = 'high', low = 'low', medium = 'medium' } export type FocalPoint = { __typename?: 'focalPoint' x?: Maybe y?: Maybe } export type AuthorFragment = { __typename?: 'AuthorRecord' name?: string | null } export type BlogPostFragment = { __typename?: 'BlogPostRecord' title?: string | null date?: any | null slug?: string | null _seoMetaTags: Array<{ __typename?: 'Tag' content?: string | null tag: string attributes?: any | null }> category: Array<{ __typename?: 'CategoryRecord' title?: string | null slug?: string | null }> author?: { __typename?: 'AuthorRecord'; name?: string | null } | null content?: { __typename?: 'BlogPostModelContentField' value: any blocks: Array< | { __typename: 'CtaRecord' id: any label?: string | null url?: string | null } | { __typename: 'ImageRecord' id: any title?: string | null asset?: { __typename?: 'FileField' url: string width?: any | null height?: any | null } | null } | { __typename: 'Callout01Record' id: any text?: string | null } | { __typename: 'Callout02Record' id: any text?: string | null } > } | null image?: { __typename?: 'FileField' url: string alt?: string | null height?: any | null width?: any | null title?: string | null } | null } export type CategoryFragment = { __typename?: 'CategoryRecord' id: any title?: string | null slug?: string | null } export type ImageFragment = { __typename?: 'FileField' url: string alt?: string | null height?: any | null width?: any | null title?: string | null } export type SeoTagsFragment = { __typename?: 'Tag' content?: string | null tag: string attributes?: any | null } export type GetBlogPostsCategoriesQueryVariables = Exact<{ [key: string]: never }> export type GetBlogPostsCategoriesQuery = { __typename?: 'Query' allCategories: Array<{ __typename?: 'CategoryRecord' id: any title?: string | null slug?: string | null }> } export type GetBlogPostsQueryVariables = Exact<{ skip: Scalars['IntType'] step: Scalars['IntType'] filterIds?: InputMaybe< Array> | InputMaybe > filterSlugs?: InputMaybe< Array> | InputMaybe > category?: InputMaybe< Array> | InputMaybe > search: Scalars['String'] }> export type GetBlogPostsQuery = { __typename?: 'Query' _allBlogPostsMeta: { __typename?: 'CollectionMetadata'; count: any } allBlogPosts: Array<{ __typename?: 'BlogPostRecord' title?: string | null date?: any | null slug?: string | null _seoMetaTags: Array<{ __typename?: 'Tag' content?: string | null tag: string attributes?: any | null }> category: Array<{ __typename?: 'CategoryRecord' title?: string | null slug?: string | null }> author?: { __typename?: 'AuthorRecord'; name?: string | null } | null content?: { __typename?: 'BlogPostModelContentField' value: any blocks: Array< | { __typename: 'CtaRecord' id: any label?: string | null url?: string | null } | { __typename: 'ImageRecord' id: any title?: string | null asset?: { __typename?: 'FileField' url: string width?: any | null height?: any | null } | null } | { __typename: 'Callout01Record' id: any text?: string | null } | { __typename: 'Callout02Record' id: any text?: string | null } > } | null image?: { __typename?: 'FileField' url: string alt?: string | null height?: any | null width?: any | null title?: string | null } | null }> } export type BlogPostsSlugQueryVariables = Exact<{ skip: Scalars['IntType'] step: Scalars['IntType'] }> export type BlogPostsSlugQuery = { __typename?: 'Query' _allBlogPostsMeta: { __typename?: 'CollectionMetadata'; count: any } allBlogPosts: Array<{ __typename?: 'BlogPostRecord'; slug?: string | null }> } export type SingleBlogPostQueryVariables = Exact<{ slug: Scalars['String'] }> export type SingleBlogPostQuery = { __typename?: 'Query' blogPost?: { __typename?: 'BlogPostRecord' title?: string | null date?: any | null slug?: string | null _seoMetaTags: Array<{ __typename?: 'Tag' content?: string | null tag: string attributes?: any | null }> category: Array<{ __typename?: 'CategoryRecord' title?: string | null slug?: string | null }> author?: { __typename?: 'AuthorRecord'; name?: string | null } | null content?: { __typename?: 'BlogPostModelContentField' value: any blocks: Array< | { __typename: 'CtaRecord' id: any label?: string | null url?: string | null } | { __typename: 'ImageRecord' id: any title?: string | null asset?: { __typename?: 'FileField' url: string width?: any | null height?: any | null } | null } | { __typename: 'Callout01Record' id: any text?: string | null } | { __typename: 'Callout02Record' id: any text?: string | null } > } | null image?: { __typename?: 'FileField' url: string alt?: string | null height?: any | null width?: any | null title?: string | null } | null } | null } export const SeoTagsFragmentDoc = gql` fragment SEOTags on Tag { content tag attributes } ` export const AuthorFragmentDoc = gql` fragment Author on AuthorRecord { name } ` export const ImageFragmentDoc = gql` fragment Image on FileField { url alt height width title } ` export const BlogPostFragmentDoc = gql` fragment BlogPost on BlogPostRecord { _seoMetaTags { ...SEOTags } title date category { title slug } author { ...Author } slug content { value blocks { __typename ... on ImageRecord { id title asset { url width height } } ... on CtaRecord { id label url } ... on Callout01Record { id text } ... on Callout02Record { id text } } } image { ...Image } } ${SeoTagsFragmentDoc} ${AuthorFragmentDoc} ${ImageFragmentDoc} ` export const CategoryFragmentDoc = gql` fragment Category on CategoryRecord { id title slug } ` export const GetBlogPostsCategoriesDocument = gql` query GetBlogPostsCategories { allCategories { ...Category } } ${CategoryFragmentDoc} ` export const GetBlogPostsDocument = gql` query GetBlogPosts( $skip: IntType! $step: IntType! $filterIds: [ItemId] = [] $filterSlugs: [String] = [] $category: [ItemId] $search: String! ) { _allBlogPostsMeta( filter: { title: { isBlank: false } id: { notIn: $filterIds } slug: { notIn: $filterSlugs } category: { anyIn: $category } OR: [{ title: { matches: { pattern: $search } } }] } ) { count } allBlogPosts( filter: { title: { isBlank: false } id: { notIn: $filterIds } slug: { notIn: $filterSlugs } category: { anyIn: $category } OR: [{ title: { matches: { pattern: $search } } }] } first: $step orderBy: date_DESC skip: $skip ) { ...BlogPost } } ${BlogPostFragmentDoc} ` export const BlogPostsSlugDocument = gql` query BlogPostsSlug($skip: IntType!, $step: IntType!) { _allBlogPostsMeta { count } allBlogPosts(first: $step, skip: $skip, orderBy: date_DESC) { slug } } ` export const SingleBlogPostDocument = gql` query SingleBlogPost($slug: String!) { blogPost(filter: { slug: { eq: $slug }, title: { isBlank: false } }) { ...BlogPost } } ${BlogPostFragmentDoc} ` export type SdkFunctionWrapper = ( action: (requestHeaders?: Record) => Promise, operationName: string, operationType?: string ) => Promise const defaultWrapper: SdkFunctionWrapper = ( action, _operationName, _operationType ) => action() export function getSdk( client: GraphQLClient, withWrapper: SdkFunctionWrapper = defaultWrapper ) { return { GetBlogPostsCategories( variables?: GetBlogPostsCategoriesQueryVariables, requestHeaders?: Dom.RequestInit['headers'] ): Promise { return withWrapper( (wrappedRequestHeaders) => client.request( GetBlogPostsCategoriesDocument, variables, { ...requestHeaders, ...wrappedRequestHeaders } ), 'GetBlogPostsCategories', 'query' ) }, GetBlogPosts( variables: GetBlogPostsQueryVariables, requestHeaders?: Dom.RequestInit['headers'] ): Promise { return withWrapper( (wrappedRequestHeaders) => client.request(GetBlogPostsDocument, variables, { ...requestHeaders, ...wrappedRequestHeaders }), 'GetBlogPosts', 'query' ) }, BlogPostsSlug( variables: BlogPostsSlugQueryVariables, requestHeaders?: Dom.RequestInit['headers'] ): Promise { return withWrapper( (wrappedRequestHeaders) => client.request(BlogPostsSlugDocument, variables, { ...requestHeaders, ...wrappedRequestHeaders }), 'BlogPostsSlug', 'query' ) }, SingleBlogPost( variables: SingleBlogPostQueryVariables, requestHeaders?: Dom.RequestInit['headers'] ): Promise { return withWrapper( (wrappedRequestHeaders) => client.request( SingleBlogPostDocument, variables, { ...requestHeaders, ...wrappedRequestHeaders } ), 'SingleBlogPost', 'query' ) } } } export type Sdk = ReturnType