diff --git a/src/filo-fs-ext2.ads b/src/filo-fs-ext2.ads
new file mode 100644
index 0000000..b26b103
--- /dev/null
+++ b/src/filo-fs-ext2.ads
@@ -0,0 +1,63 @@
+package FILO.FS.Ext2 is
+
+   type T is private;
+
+   function Is_Mounted (State : T) return Boolean;
+   function Is_Open (State : T) return Boolean
+   with
+      Post => (if Is_Open'Result then Is_Mounted (State));
+
+   procedure Mount
+     (State    : in out T;
+      Part_Len : in     Partition_Length;
+      Success  :    out Boolean)
+   with
+      Pre => not Is_Mounted (State),
+      Post => Success = Is_Mounted (State);
+
+   procedure Open
+     (State       : in out T;
+      File_Len    :    out File_Length;
+      File_Path   : in     String;
+      Success     : out    Boolean)
+   with
+      Pre => Is_Mounted (State) and not Is_Open (State),
+      Post => Success = Is_Open (State);
+
+   procedure Close (State : in out T)
+   with
+      Pre => Is_Open (State),
+      Post => Is_Mounted (State);
+
+   procedure Read
+     (State    : in out T;
+      File_Len : in     File_Length;
+      File_Pos : in out File_Offset;
+      Buf      :    out Buffer_Type;
+      Len      :    out Natural)
+   with
+      Pre => Is_Open (State),
+      Post => Is_Open (State);
+
+private
+   type State is (Unmounted, Mounted, File_Opened);
+
+   -- maximum block size is 64KiB (2^16):
+   subtype Log_Block_Size is Positive range 10 .. 16;
+
+   subtype Inode_Size is Positive range 128 .. Positive (Unsigned_16'Last);
+   subtype Desc_Size  is Positive range  32 .. Positive (Unsigned_16'Last);
+
+   type T is record
+      S : State;
+      Part_Len          : Partition_Length := 0;
+      First_Data_Block  : Block_Offset := 0;
+      Block_Size_Bits   : Log_Block_Size := 10;
+      Inodes_Per_Group  : Positive := 1;
+      Inode_Size        : Ext2.Inode_Size := Ext2.Inode_Size'First;
+      Desc_Size         : Ext2.Desc_Size := Ext2.Desc_Size'First;
+      Feature_Extents   : Boolean := False;
+      Feature_64Bit     : Boolean := False;
+   end record;
+
+end FILO.FS.Ext2;
