// This file was generated by the Gtk# code generator.
// Any changes made will be lost if regenerated.

namespace Gst.WebRTC {

	using System;

	public delegate void OnMessageStringEventHandler(object o, OnMessageStringEventArgs args);

	public class OnMessageStringEventArgs : GLib.SignalArgs {
		public string Data{
			get {
				return (string) Args [0];
			}
		}

	}
}
