{{>partial_header_graphql}}
# package {{packageName}}

# {{classname}}

{{#operations}}
{{#operation}}
{{#vendorExtensions.x-is-mutation}}{{#hasParams}}

input {{operationId}}Input {
    {{#allParams}}
    {{#description}}# {{.}}{{/description}}
    {{paramName}}: {{#isContainer}}[{{/isContainer}}{{dataType}}{{#isArray}}Input{{/isArray}}{{#isModel}}Input{{/isModel}}{{#isContainer}}]{{/isContainer}}{{^-last}}, {{/-last}}
    {{/allParams}}
}{{/hasParams}}{{/vendorExtensions.x-is-mutation}}{{/operation}}

type Mutation {
{{#operation}}
{{#vendorExtensions.x-is-mutation}}
  {{#summary}}
  # {{.}}
  {{/summary}}
  {{#notes}}
  # {{.}}
  {{/notes}}
  {{#allParams}}
  # @param {{dataType}} {{paramName}} {{description}}
  {{/allParams}}
  # @return [{{returnType}}{{^returnType}}Boolean{{/returnType}}]
  {{operationId}}{{#hasParams}}(input: {{operationId}}Input!){{/hasParams}}: {{returnType}}{{^returnType}}Boolean{{/returnType}}
{{/vendorExtensions.x-is-mutation}}
{{/operation}}
}

{{/operations}}
{{#operations}}
type Query {
{{#operation}}
{{^vendorExtensions.x-is-mutation}}
  {{#summary}}
  # {{.}}
  {{/summary}}
  {{#notes}}
  # {{.}}
  {{/notes}}
  {{#allParams}}
  # @param {{dataType}} {{paramName}} {{description}}
  {{/allParams}}
  # @return [{{returnType}}{{^returnType}}Boolean{{/returnType}}]
  {{operationId}}{{#hasParams}}({{#allParams}}{{paramName}}: {{dataType}}{{^-last}}, {{/-last}}{{/allParams}}){{/hasParams}}: {{returnType}}{{^returnType}}Boolean{{/returnType}}
{{/vendorExtensions.x-is-mutation}}
{{/operation}}
}

{{/operations}}