// Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.

package operations

import (
	"github.com/airbytehq/terraform-provider-airbyte/internal/sdk/models/shared"
	"net/http"
)

type PutDestinationRequest struct {
	DestinationID         string                        `pathParam:"style=simple,explode=false,name=destinationId"`
	DestinationPutRequest *shared.DestinationPutRequest `request:"mediaType=application/json"`
}

func (o *PutDestinationRequest) GetDestinationID() string {
	if o == nil {
		return ""
	}
	return o.DestinationID
}

func (o *PutDestinationRequest) GetDestinationPutRequest() *shared.DestinationPutRequest {
	if o == nil {
		return nil
	}
	return o.DestinationPutRequest
}

type PutDestinationResponse struct {
	// HTTP response content type for this operation
	ContentType string
	// HTTP response status code for this operation
	StatusCode int
	// Raw HTTP response; suitable for custom response parsing
	RawResponse *http.Response
	// Update a Destination and fully overwrite it
	DestinationResponse *shared.DestinationResponse
}

func (o *PutDestinationResponse) GetContentType() string {
	if o == nil {
		return ""
	}
	return o.ContentType
}

func (o *PutDestinationResponse) GetStatusCode() int {
	if o == nil {
		return 0
	}
	return o.StatusCode
}

func (o *PutDestinationResponse) GetRawResponse() *http.Response {
	if o == nil {
		return nil
	}
	return o.RawResponse
}

func (o *PutDestinationResponse) GetDestinationResponse() *shared.DestinationResponse {
	if o == nil {
		return nil
	}
	return o.DestinationResponse
}
