private/Invoke-SplitterUiSplit.ps1

function Invoke-SplitterUiSplit {
    [CmdletBinding()]
    param(
        [Parameter(Mandatory)]
        [hashtable]
        $SplitParams
    )

    $outputRecords = @(& {
        Split-WindowsInstallMedia @SplitParams -Verbose
    } 4>&1)

    $verboseLines = @()
    $results = @()

    foreach ($record in $outputRecords) {
        if ($record -is [System.Management.Automation.VerboseRecord]) {
            $verboseLines += $record.Message
            continue
        }

        $results += $record
    }

    [pscustomobject]@{
        VerboseLines = $verboseLines
        Results = @($results)
    }
}