{{#each innerTypes ~}} {{#if usingFragments ~}} {{#each fragmentsUsed ~}} import { {{ this }} } from './index'; {{/each ~}} {{/if ~}} {{/each ~}} {{#each imports ~}} import { {{ this }} } from './index'; {{/each ~}} export namespace {{ name }} { {{#if hasVariables}} export type Variables = { {{#each variables}} {{ name }}: {{#if isArray}}Array<{{/if}}{{ type }}{{#if isArray}}>{{/if}}{{#unless isRequired}} | null{{/unless}}; {{/each}} } {{/if ~}} {{#each innerTypes}} export type {{ name }} = { {{#each fields}} {{ name }}: {{#if isArray}}Array<{{/if}}{{ type }}{{#if isArray}}>{{/if}}; {{/each}} } {{#each fragmentsUsed}}& {{this}}.Fragment {{/each }}{{#if hasInlineFragments}}& ({{#each inlineFragments}}{{ typeName }}{{/each}} | {}) {{/if}} {{/each ~}} {{#each resultFields}} export type Result = { {{#each fields}} {{ name }}: {{#if isArray}}Array<{{/if}}{{ type }}{{#if isArray}}>{{/if}}; {{/each}} } {{/each ~}} }