With -Filepath you can pass positional arguments with the -ArgumentList switch.
Invoke-command -filepath "\\share\Install-MicrosoftTeams.ps1" -ArgumentList "\\share\teams\" -Computername "laptop111"
I have not been able to find a way to use parameter names. So if the script requires -Source, you won't be able to use -filepath.
See this site for more info.
https://stackoverflow.com/questions/4225748/how-do-i-pass-named-parameters-with-invoke-command
In your case it appears that you have both the script and the install files for the software sitting on a server. You can use -ScriptBlock and have laptop111 pull both the script and the install files directly from the server.
$script =
{
\\share\Install-MicrosoftTeams.ps1 -source \\share\teams\
}
$User = ".\admin"
$PWord = ConvertTo-SecureString -String "password" -AsPlainText -Force
$Credential = New-Object -TypeName System.Management.Automation.PSCredential -ArgumentList $User, $PWord
Invoke-Command -ComputerName "laptop111" -credential $Credential -ScriptBlock $script
Because you have to access a second machine (\share) you will run into the double hop problem.
https://blog.ipswitch.com/the-infamous-double-hop-problem-in-powershell
https://learn.microsoft.com/en-us/powershell/scripting/learn/remoting/ps-remoting-second-hop?view=powershell-7.1
If you are using Active Directory accounts, you should be able to use $Credential as in my sample to access the \server\share. I don't have an AD environment to test with, so if that doesn't work, you can map a New-PSDrive to the share and use $Credential to authenticate. Or you can use the other options that those two links spell out.
Give that a try.