"""
Represents a database dump of selected tables at a given point in time.

For example, the animethemes-db-dump-wiki-1663559663946.sql dump represents the database dump of wiki tables performed at 2022-09-19.
"""
type Dump @model(class: "App\\Models\\Admin\\Dump") {
    "The primary key of the resource"
    id: Int! @rename(attribute: "dump_id")

    "The path of the file in storage"
    path: String!

    "The URL to download the file from storage"
    link: String!

    "The date that the resource was created"
    createdAt(format: String! = "Y-m-d H:i:s"): String! @timestamp(attribute: "created_at")

    "The date that the resource was updated"
    updatedAt(format: String! = "Y-m-d H:i:s"): String! @timestamp(attribute: "updated_at")
}

extend type Query {
    "Returns a listing of dump resources given fields."
    dumpPagination(
        where: _ @whereConditions(columnsEnum: DumpFilterableColumns, handler: "App\\GraphQL\\WhereConditions\\WhereConditionsHandler")
        sort: [DumpSort!] @sort
    ): [Dump!]! @paginate(scopes: ["public"])
}