
/**
* {{&summary}}
* request: {{&methodName}}
{{#parameters}}
{{^isSingleton}} * @param {{&name}} - {{&description}}{{/isSingleton}}
{{/parameters}}
*/
export const {{&methodName}} = function(parameters= {}) {
    const { $config, $domain, $query, ...otherParameters} = parameters
    let path = '{{&path}}'
    let body = {}

{{#parameters}}
    {{#isQueryParameter}}
        if(otherParameters['{{&name}}'] !== undefined) {
            body['{{&name}}'] = otherParameters['{{&name}}']
        }
    {{/isQueryParameter}}

    {{#isBodyParameter}}
        if(otherParameters['{{&name}}'] !== undefined) {
            body = otherParameters['{{&name}}']
        }
    {{/isBodyParameter}}

    {{#isFormParameter}}
        if(otherParameters['{{&name}}'] !== undefined) {
            body['{{&name}}'] = otherParameters['{{&name}}']
        }
    {{/isFormParameter}}
    {{#required}}
        if(otherParameters['{{&name}}'] === undefined) {
            console.warn('Missing required parameter: {{&name}}')
        }
    {{/required}}
{{/parameters}}

    return requester.request({
        method: '{{toLowerCase method}}',
        host: $domain,
        path,
        query: $query,
        body,
        config: $config,
    })
}

