how the typeset command works in shell script

typeset -l section
section=${2:-.}

what does these 2 lines meaning?

typeset -l section
is creating a variable that will be forced lower case.
Check by typing:

typeset -l section
section=LSKDHFLKSDHF
echo $section

section=${2:-.}

Means, assign section variable the value of the 2nd command line argument.
If that argument is not set, then set the value of section to a dot.