Recovery from Snapshot

When we restore an index using snapshot, it get restored to primary shards only and restore thread is closed and then copy this index from primary to associated replica. is this true?? If not , what is the actual process of restoring from snapshot.Also what is the function of recovery Id generated in between the process? Thanks.