# How can I cite the full content of a theorem?

I wish to obtain a result like:

Introduction

...

And we will obtain the following Theorem:

Theorem 2.X

[statement of the theorem]

...

1. Section One

...

1. Section Two

...

This gives

Theorem 2.X

[statement of the theorem]

...

And of course I don't want to input the theorem by hand in the introduction so that I have to update the number everytime I add some new theorem before my Theorem 2.X.

The best way that I can come up with is to use \cref for the number of theorem, say

\documentclass{article}

\usepackage{hyperref}
\usepackage{cleveref}
\usepackage{amsthm}
\newtheorem{theorem}{Theorem}[section]
\crefname{theorem}{theorem}{theorems}

\begin{document}

\section*{Introduction}
\Cref{label}
\textit{[statement of the theorem]}

\section{Section One}

\section{Section Two}

\begin{theorem}\label{label}
[statement of the theorem]
\end{theorem}

\end{document}


This seems not bad, but I still have to do manually to keep the statements and the textstyle synchronous. Also, if I'm using tcbtheorem for my theorems, then I need to create a tcolorbox and make it have the same style to my boxes of theorems, and it would be tedious if I want to change the style someday.

I'd like to know if there is a better solution in which everything can be done automatically. Thanks in advance.

The thmtools package defines restatable theorems through the thm-restate package. Here is is the example in the manual, which shows how it is used:

\begin{restatable}[Euclid]{theorem}{firsteuclid}
\label{thm:euclid}%
For every prime $p$, there is a prime $p’>p$.
In particular, the list of primes,
$$\label{eq:1} 2,3,45,7,\dots$$
is infinite.
\end{restatable}


and to the right, I just use

\firsteuclid*