expose better interface for trigger