package request

type FlightInspectionFileChecklistCreateAttributes struct {
	IsDone             *bool  `json:"is_done,omitempty" example:"false"`
	HelicopterFileID   string `json:"helicopter_file_id" validate:"required" example:"019d6771-5fb5-7337-837f-bc5ed85181a1"`
	FlightInspectionID string `json:"flight_inspection_id" validate:"required" example:"019d6772-471c-7b70-b42a-d94020ef61e4"`
}

type FlightInspectionFileChecklistCreateData struct {
	Type       string                                        `json:"type" validate:"required,oneof=flight_inspection_file_checklist_create flight_inspection_file_checklist" example:"flight_inspection_file_checklist_create"`
	Attributes FlightInspectionFileChecklistCreateAttributes `json:"attributes" validate:"required"`
}

type FlightInspectionFileChecklistCreateRequest struct {
	Data FlightInspectionFileChecklistCreateData `json:"data" validate:"required"`
}

type FlightInspectionFileChecklistUpdateAttributes struct {
	IsDone             *bool   `json:"is_done,omitempty" example:"true"`
	HelicopterFileID   *string `json:"helicopter_file_id,omitempty" example:"019d6771-5fb5-7337-837f-bc5ed85181a1"`
	FlightInspectionID *string `json:"flight_inspection_id,omitempty" example:"019d6772-471c-7b70-b42a-d94020ef61e4"`
}

type FlightInspectionFileChecklistUpdateData struct {
	Type       string                                        `json:"type" validate:"required,oneof=flight_inspection_file_checklist_update flight_inspection_file_checklist" example:"flight_inspection_file_checklist_update"`
	ID         string                                        `json:"id" example:"019d6773-ccca-71dd-b9c7-8e6f531deb90"`
	Attributes FlightInspectionFileChecklistUpdateAttributes `json:"attributes" validate:"required"`
}

type FlightInspectionFileChecklistUpdateRequest struct {
	Data FlightInspectionFileChecklistUpdateData `json:"data" validate:"required"`
}
