how to navigate programmatically without navigation link?

Hello. I'm making an app with several different views. I'm trying to switch views using a button but I can't seem to figure out how. I know Navigation Links work, but my case doesn't work. The reasons for this are because I need to run other code when they click the button and I don't want them to be able to navigate back (to CustomizationView/CreateAccountView). I know that you can hide the back button but my problem with that is the fact that i will be navigating to a view (MainView) that will also have navigation buttons in it, so if i'm thinking correctly, the button will be hidden but when they press the next navigationlink (in MainView) it will show again and then they can go back (to CustomizationView/CreateAccountView). i don't want them to go back because they will be navigating from a login/account view that wont be needed anymore. I'm currently using .fullScreenCover() and it works fine except for performance (I'm assuming). here's the code:

import SwiftUI
struct CustomizationView: View {
@State private var showMain = false
var body: some View {
 Button("Done") {
          // some more code here
            showMain = true
        }
        .fullScreenCover(isPresented: $showMain) {
               MainView()
            }
}
}

here's a visual for the navigation if you're confused

Use navigationDestination(isPresented:destination:) and hide the Back button at the destination View?

import SwiftUI

struct ContentView: View {
    @State var goToHello = false
    
    var body: some View {
        NavigationStack {
            Button {
                goToHello = true
            } label: {
                Text("Go to Hello?")
            }
            .navigationDestination(isPresented: $goToHello) {
                HelloView()
            }
        }
    }
}

#Preview {
    ContentView()
}

struct HelloView: View {
    var body: some View {
        NavigationStack {
            VStack {
                Text("Hello!")
            }
            .navigationBarBackButtonHidden()
        }
    }
}
how to navigate programmatically without navigation link?
 
 
Q