Pourquoi ceci n'est pas conforme à ViewModifier?

struct buttonSc: ViewModifier
{
    func body(content: Content) -> some View{
        content
            .scaleEffect(0.95)
            .shadow(color: .black, radius: 4.0, x: 5.0, y: 5.0)
            .scaleEffect(scaleTimer())
            .shadow(color: .black, radius: 0.0, x: 0.0, y: 0.0)
            .animation(.default)
    }
    func scaleTimer() -> Double {
        Timer.scheduledTimer(withTimeInterval: 1, repeats: false, block: {timer in})
        return 1
    }
}

Xcode ne le signale pas comme fautif sauf si on cherche à l’appliquer, .(modifier(buttonSc)) déclenche un refus non expliqué. ("Type ‹ buttonSc.Type › cannot conform to ‹ ViewModifier › ")