v1だけどこんな感じの使ってる

MyClipWait(Action := 0) {

Action ? Send % Action
ClipBoard := "1E5z2Rij"
Timeout := A_TickCount + 10000
loop
{
if ClipBoard != "1E5z2Rij"
return ClipBoard
if A_TickCount > Timeout
throw {What:"Timeout", Func:A_ThisFunc, ClipBoard:ClipBoard}
Sleep,1
}
}

sample
s := MyClipWait("^c")