// Package docs Code generated by swaggo/swag. DO NOT EDIT
package docs

import "github.com/swaggo/swag"

const docTemplate = `{
    "schemes": {{ marshal .Schemes }},
    "swagger": "2.0",
    "info": {
        "description": "{{escape .Description}}",
        "title": "{{.Title}}",
        "contact": {},
        "version": "{{.Version}}"
    },
    "host": "{{.Host}}",
    "basePath": "{{.BasePath}}",
    "paths": {
        "/{instanceId}/chat/messages": {
            "post": {
                "description": "Returns chat messages from the specified WhatsApp instance.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Chat"
                ],
                "summary": "Get WhatsApp Chat Messages",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Phone",
                        "name": "data",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handler.getMessagesBody"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of chat messages",
                        "schema": {
                            "$ref": "#/definitions/handler.getMessagesResponse"
                        }
                    }
                }
            }
        },
        "/{instanceId}/chat/send/audio": {
            "post": {
                "description": "Sends an audio message on WhatsApp using the specified instance.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Chat"
                ],
                "summary": "Send Audio Message on WhatsApp",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Audio message body",
                        "name": "data",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handler.sendAudioMessageBody"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Message Send Response",
                        "schema": {
                            "$ref": "#/definitions/handler.sendAudioMessageResponse"
                        }
                    }
                }
            }
        },
        "/{instanceId}/chat/send/image": {
            "post": {
                "description": "Sends an image message on WhatsApp using the specified instance.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Chat"
                ],
                "summary": "Send Image Message on WhatsApp",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Image message body",
                        "name": "data",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handler.sendImageMessageBody"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Message Send Response",
                        "schema": {
                            "$ref": "#/definitions/handler.sendImageMessageResponse"
                        }
                    }
                }
            }
        },
        "/{instanceId}/chat/send/text": {
            "post": {
                "description": "Sends a text message on WhatsApp using the specified instance.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Chat"
                ],
                "summary": "Send Text Message on WhatsApp",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Text message body",
                        "name": "data",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handler.sendTextMessageBody"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Message Send Response",
                        "schema": {
                            "$ref": "#/definitions/handler.sendTextMessageResponse"
                        }
                    }
                }
            }
        },
        "/{instanceId}/check/phones": {
            "post": {
                "description": "Verifies if the phone numbers in the provided list are registered WhatsApp users.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Phone Verification"
                ],
                "summary": "Check Phones on WhatsApp",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    },
                    {
                        "description": "Phone list",
                        "name": "data",
                        "in": "body",
                        "required": true,
                        "schema": {
                            "$ref": "#/definitions/handler.getCheckPhonesBody"
                        }
                    }
                ],
                "responses": {
                    "200": {
                        "description": "List of verified numbers",
                        "schema": {
                            "$ref": "#/definitions/handler.getCheckPhonesResponse"
                        }
                    }
                }
            }
        },
        "/{instanceId}/contact/info": {
            "get": {
                "description": "Retrieves contact information.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Contact"
                ],
                "summary": "Get Contact Information",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    },
                    {
                        "type": "string",
                        "description": "Phone",
                        "name": "phone",
                        "in": "query",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Contact Information",
                        "schema": {
                            "$ref": "#/definitions/handler.contactInfoResponse"
                        }
                    }
                }
            }
        },
        "/{instanceId}/logout": {
            "post": {
                "description": "Logs out from the specified WhatsApp instance.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Logout"
                ],
                "summary": "Logout from WhatsApp",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Logout successful",
                        "schema": {
                            "type": "object",
                            "additionalProperties": true
                        }
                    }
                }
            }
        },
        "/{instanceId}/profile": {
            "get": {
                "description": "Retrieves profile information.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Profile"
                ],
                "summary": "Get Profile Information",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Profile Information",
                        "schema": {
                            "$ref": "#/definitions/handler.getProfileInfoResponse"
                        }
                    }
                }
            }
        },
        "/{instanceId}/qrcode": {
            "get": {
                "description": "Returns a QR code to initiate WhatsApp login.",
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Login"
                ],
                "summary": "Get WhatsApp QR Code",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "QR Code",
                        "schema": {
                            "$ref": "#/definitions/handler.getQrCodeResponse"
                        }
                    }
                }
            }
        },
        "/{instanceId}/status": {
            "get": {
                "description": "Returns the status of the specified WhatsApp instance.",
                "consumes": [
                    "application/json"
                ],
                "produces": [
                    "application/json"
                ],
                "tags": [
                    "WhatsApp Status"
                ],
                "summary": "Get WhatsApp Instance Status",
                "parameters": [
                    {
                        "type": "string",
                        "description": "Instance ID",
                        "name": "instanceId",
                        "in": "path",
                        "required": true
                    }
                ],
                "responses": {
                    "200": {
                        "description": "Status Response",
                        "schema": {
                            "$ref": "#/definitions/handler.getStatusResponse"
                        }
                    }
                }
            }
        }
    },
    "definitions": {
        "handler.contactInfoResponse": {
            "type": "object",
            "properties": {
                "info": {
                    "$ref": "#/definitions/whatsapp.ContactInfo"
                }
            }
        },
        "handler.getCheckPhonesBody": {
            "type": "object",
            "properties": {
                "phones": {
                    "type": "array",
                    "items": {
                        "type": "string"
                    }
                }
            }
        },
        "handler.getCheckPhonesResponse": {
            "type": "object",
            "properties": {
                "phones": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/whatsapp.IsOnWhatsAppResponse"
                    }
                }
            }
        },
        "handler.getMessagesBody": {
            "type": "object",
            "properties": {
                "phone": {
                    "type": "string"
                }
            }
        },
        "handler.getMessagesResponse": {
            "type": "object",
            "properties": {
                "messages": {
                    "type": "array",
                    "items": {
                        "$ref": "#/definitions/response.Message"
                    }
                }
            }
        },
        "handler.getProfileInfoResponse": {
            "type": "object",
            "properties": {
                "info": {
                    "$ref": "#/definitions/whatsapp.ContactInfo"
                }
            }
        },
        "handler.getQrCodeResponse": {
            "type": "object",
            "properties": {
                "qrcode": {
                    "type": "string"
                }
            }
        },
        "handler.getStatusResponse": {
            "type": "object",
            "properties": {
                "status": {
                    "type": "string"
                }
            }
        },
        "handler.sendAudioMessageBody": {
            "type": "object",
            "properties": {
                "base64": {
                    "type": "string"
                },
                "phone": {
                    "type": "string"
                }
            }
        },
        "handler.sendAudioMessageResponse": {
            "type": "object",
            "properties": {
                "message": {
                    "$ref": "#/definitions/response.Message"
                }
            }
        },
        "handler.sendImageMessageBody": {
            "type": "object",
            "properties": {
                "base64": {
                    "type": "string"
                },
                "phone": {
                    "type": "string"
                }
            }
        },
        "handler.sendImageMessageResponse": {
            "type": "object",
            "properties": {
                "message": {
                    "$ref": "#/definitions/response.Message"
                }
            }
        },
        "handler.sendTextMessageBody": {
            "type": "object",
            "properties": {
                "phone": {
                    "type": "string"
                },
                "text": {
                    "type": "string"
                }
            }
        },
        "handler.sendTextMessageResponse": {
            "type": "object",
            "properties": {
                "message": {
                    "$ref": "#/definitions/response.Message"
                }
            }
        },
        "response.Message": {
            "type": "object",
            "properties": {
                "body": {
                    "type": "string"
                },
                "chat": {
                    "type": "string"
                },
                "from_me": {
                    "type": "boolean"
                },
                "id": {
                    "type": "integer"
                },
                "media_base64": {
                    "type": "string"
                },
                "media_mimetype": {
                    "type": "string"
                },
                "media_type": {
                    "type": "string"
                },
                "message_id": {
                    "type": "string"
                },
                "sender": {
                    "type": "string"
                },
                "timestamp": {
                    "type": "string"
                }
            }
        },
        "whatsapp.ContactInfo": {
            "type": "object",
            "properties": {
                "name": {
                    "type": "string"
                },
                "phone": {
                    "type": "string"
                },
                "picture": {
                    "type": "string"
                },
                "status": {
                    "type": "string"
                }
            }
        },
        "whatsapp.IsOnWhatsAppResponse": {
            "type": "object",
            "properties": {
                "is_registered": {
                    "type": "boolean"
                },
                "phone": {
                    "type": "string"
                },
                "query": {
                    "type": "string"
                }
            }
        }
    }
}`

// SwaggerInfo holds exported Swagger Info so clients can modify it
var SwaggerInfo = &swag.Spec{
	Version:          "1.0",
	Host:             "localhost:8900",
	BasePath:         "/api",
	Schemes:          []string{},
	Title:            "ZapMeow API",
	Description:      "API to handle multiple WhatsApp instances",
	InfoInstanceName: "swagger",
	SwaggerTemplate:  docTemplate,
	LeftDelim:        "{{",
	RightDelim:       "}}",
}

func init() {
	swag.Register(SwaggerInfo.InstanceName(), SwaggerInfo)
}
