<?php

namespace HelpGent\App\DTO;

defined( 'ABSPATH' ) || exit;

class FormDTO {
    private int $id;

    private string $title;

    private string $status;

    private string $content;

    private int $created_by;

    private array $available_pages;

    private int $is_chat_bubble;

    private ?string $draft = 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 title
     *
     * @return string
     */
    public function get_title(): string {
        return $this->title;
    }
    
    /**
     * Set the value of title
     *
     * @param string $title
     * @return self
     */
    public function set_title( string $title ): self {
        $this->title = $title;
    
        return $this;
    }

    /**
     * Get the value of status
     *
     * @return string
     */
    public function get_status(): string {
        return $this->status;
    }
    
    /**
     * Set the value of status
     *
     * @param string $status
     * @return self
     */
    public function set_status( string $status ): self {
        $this->status = $status;
    
        return $this;
    }

    /**
     * Get the value of content
     *
     * @return string
     */
    public function get_content(): string {
        return $this->content;
    }
    
    /**
     * Set the value of content
     *
     * @param string $content
     * @return self
     */
    public function set_content( string $content ): self {
        $this->content = $content;
    
        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 available_pages
     *
     * @return array
     */
    public function get_available_pages(): array {
        return $this->available_pages;
    }
    
    /**
     * Set the value of available_pages
     *
     * @param array $available_pages
     * @return self
     */
    public function set_available_pages( array $available_pages ): self {
        $this->available_pages = $available_pages;
    
        return $this;
    }

    /**
     * Get the value of is_chat_bubble
     *
     * @return int
     */
    public function get_is_chat_bubble(): int {
        return $this->is_chat_bubble;
    }
    
    /**
     * Set the value of is_chat_bubble
     *
     * @param int $is_chat_bubble
     * @return self
     */
    public function set_is_chat_bubble( int $is_chat_bubble ): self {
        $this->is_chat_bubble = $is_chat_bubble;
    
        return $this;
    }

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