/** @file */
#pragma once

#include <stdio.h>
#include "struct.h"
#include <string.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include "env.h"
#include "const.h"
#include "utils.h"


disk create_disk();
disk open_disk(char* filename);
int do_ls(disk *d, char* path);
int do_touch(disk *d, char *filepath);
int do_mkdir(disk* d, char *dirpath);
int do_df(disk *d);
int do_rm(disk *disk, char *filepath);
int do_rmdir(disk *disk, char *filepath);
int do_cat(disk *disk, char* path_to_file);
int find_dir_inode_by_name(char *name, int dir_index, disk *d);
void persist_on_disk(disk* d);