i need to retrun struct duitonary from a funtion and when it run script i'm gettting cannot use res (type []exceldata) as type []struct {} in return argument

I have created struct in my go script and i added values to that and added to array now i need to return it to main funtion


package main

import (
    "fmt"
    "database/sql"
    _ "github.com/go-sql-driver/mysql"
    "github.com/360EntSecGroup-Skylar/excelize"
    "log"

)


type exceldata struct {
    username string
    rfid  string
    user string
}

func read() []struct{} {
    exdata := exceldata{}
    res := []exceldata{}
    f, err := excelize.OpenFile("./required_details.xlsx")
    if err != nil {
        fmt.Println(err)
        return res
    }

    // Get value from cell by given worksheet name and axis.
    /*cell, err := f.GetCellValue("Sheet1", "A566")
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println(cell)*/

     // Get all the rows in the Sheet1.
    rows, err := f.GetRows("Sheet1")

    for _, row := range rows {
        if row[0] != "eof"{

            exdata.username = row[0]
            exdata.rfid = row[1]
            exdata.user = row[2]
            res = append(res, exdata)
            fmt.Println(res)

        }else{
                return res
        }
    }
    return res;

}

func main() {

    fmt.Println("Go MySQL Tutorial")
    resexceldata := []exceldata{}
    resexceldata =read() 
    fmt.Println("Routes are Loded.")

}