Double square brackets are used to specify literal strings in Lua. These strings can contain multiple lines and interpret escape sequences as plaintext. As for parameters, they are treated no differently than any other value. Your example is syntactically correct for a function with two parameters.
This style is desirable when your strings contain characters which might otherwise have to be escaped manually, such as \, ', and ". For example, it's far easier to read and write [[here's a "quote"]] than it is to write "here's a \"quote\"" or 'here\'s a "quote"'.
We can delimit literal strings also by matching double square brackets
[[...]]. Literals in this bracketed form may run for several lines,
may nest, and do not interpret escape sequences. Moreover, this form
ignores the first character of the string when this character is a
newline. This form is especially convenient for writing strings that
contain program pieces;