If you just want to install packages via opkg, use that 23 MB as the reference. The exact consumed file space will depend on the on-the-fly compression, but that might not be much for binaries.
Additionally, for data files, you also have the "syscfg" partition that is mounted to /tmp/syscfg and has about 28 MB free space. Note that syscfg is visible both alternative firmware partitions, so it can be used to store private files that should be usable regardless if you are runnign the firmware from the secondary or primary firmware partition. (LEDE only uses it to store settings during sysupgrade)
This is from wrt2300acm, so the number are slightly larger. You can notice how df only shows one kernel & rootfs partition, the alternative is hidden, but the syscfg is visible. "/proc/mtd" and kernel log show all partitions.
root@router2:~# dmesg
...
[ 1.046316] nand: 256 MiB, SLC, erase size: 128 KiB, page size: 2048, OOB size: 128
[ 1.054009] pxa3xx-nand f10d0000.flash: ECC strength 16, ECC step size 2048
[ 1.061183] Bad block table found at page 131008, version 0x01
[ 1.067378] Bad block table found at page 130944, version 0x01
[ 1.073492] 11 ofpart partitions found on MTD device pxa3xx_nand-0
[ 1.079696] Creating 11 MTD partitions on "pxa3xx_nand-0":
[ 1.085212] 0x000000000000-0x000000200000 : "u-boot"
[ 1.090478] 0x000000200000-0x000000220000 : "u_env"
[ 1.095638] 0x000000220000-0x000000260000 : "s_env"
[ 1.100778] 0x0000007e0000-0x000000820000 : "devinfo"
[ 1.106095] 0x000000820000-0x000000a00000 : "sysdiag"
[ 1.111405] 0x000000a00000-0x000005a00000 : "kernel1"
[ 1.116874] 0x000001000000-0x000005a00000 : "ubi"
[ 1.121993] 0x000005a00000-0x00000aa00000 : "kernel2"
[ 1.127448] 0x000006000000-0x00000aa00000 : "rootfs2"
[ 1.132905] 0x00000aa00000-0x000010000000 : "syscfg"
[ 1.138289] 0x000000260000-0x000000820000 : "unused_area"
.
root@router2:~# cat /proc/mtd
dev: size erasesize name
mtd0: 00200000 00020000 "u-boot"
mtd1: 00020000 00020000 "u_env"
mtd2: 00040000 00020000 "s_env"
mtd3: 00040000 00020000 "devinfo"
mtd4: 001e0000 00020000 "sysdiag"
mtd5: 05000000 00020000 "kernel1"
mtd6: 04a00000 00020000 "ubi"
mtd7: 05000000 00020000 "kernel2"
mtd8: 04a00000 00020000 "rootfs2"
mtd9: 05600000 00020000 "syscfg"
mtd10: 005c0000 00020000 "unused_area"
.
root@router2:~# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/root 5888 5888 0 100% /rom
tmpfs 256608 1092 255516 0% /tmp
/dev/ubi0_1 55508 76 52564 0% /overlay
overlayfs:/overlay 55508 76 52564 0% /
ubi1:syscfg 71908 424 67780 1% /tmp/syscfg
tmpfs 512 0 512 0% /dev
/dev/ubi1_0 71908 424 67780 1% /mnt/ubi1_0