<?php

namespace HelpGent\App\DTO;

defined( 'ABSPATH' ) || exit;

use HelpGent\WpMVC\DTO\DTO;

class ResponseDTO extends DTO {
    private int $id;

    private int $form_id;

    private int $is_completed = 0;

    private ?string $ip = null;

    private ?int $created_by;

    private ?int $is_verified = null;

    private ?string $submitted_at = null;

    /**
     * Get the value of id
     *
     * @return int
     */
    public function get_id(): int {
        return $this->id;
    }

    /**
     * Set the value of id
     *
     * @param int $id
     * @return self
     */
    public function set_id( int $id ): self {
        $this->id = $id;

        return $this;
    }

    /**
     * Get the value of form_id
     *
     * @return int
     */
    public function get_form_id(): int {
        return $this->form_id;
    }

    /**
     * Set the value of form_id
     *
     * @param int $form_id
     * @return self
     */
    public function set_form_id( int $form_id ): self {
        $this->form_id = $form_id;

        return $this;
    }

    /**
     * Get the value of is_completed
     *
     * @return int
     */
    public function get_is_completed(): int {
        return $this->is_completed;
    }

    /**
     * Set the value of is_completed
     *
     * @param int $is_completed
     * @return self
     */
    public function set_is_completed( int $is_completed ): self {
        $this->is_completed = $is_completed;

        return $this;
    }

    /**
     * Get the value of ip
     *
     * @return ?string
     */
    public function get_ip(): ?string {
        return $this->ip;
    }

    /**
     * Set the value of ip
     *
     * @param ?string $ip
     * @return self
     */
    public function set_ip( ?string $ip ): self {
        $this->ip = $ip;

        return $this;
    }

    /**
     * Get the value of created_by
     *
     * @return ?int
     */
    public function get_created_by(): ?int {
        return $this->created_by;
    }

    /**
     * Set the value of created_by
     *
     * @param ?int $created_by
     * @return self
     */
    public function set_created_by( ?int $created_by ): self {
        $this->created_by = $created_by;

        return $this;
    }

    /**
     * Get the value of is_verified
     *
     * @return ?int
     */
    public function get_is_verified(): ?int {
        return $this->is_verified;
    }

    /**
     * Set the value of is_verified
     *
     * @param ?int $is_verified
     * @return self
     */
    public function set_is_verified( ?int $is_verified ): self {
        $this->is_verified = $is_verified;

        return $this;
    }

    /**
     * Get the value of submitted_at
     *
     * @return ?string
     */
    public function get_submitted_at(): ?string {
        return $this->submitted_at;
    }
    
    /**
     * Set the value of submitted_at
     *
     * @param ?string $submitted_at
     * @return self
     */
    public function set_submitted_at( ?string $submitted_at ): self {
        $this->submitted_at = $submitted_at;
    
        return $this;
    }
}