/* * SPDX-License-Identifier: AGPL-3.0-or-later * Copyright (C) 2025 Sergej Görzen * This file is part of OmiLAXR. */ namespace OmiLAXR.Endpoints { /// /// Defines a delegate for endpoint actions with no additional parameters. /// /// The endpoint that triggered the action public delegate void EndpointAction(Endpoint sender); /// /// Defines a delegate for endpoint actions with one additional parameter. /// /// Type of the first parameter /// The endpoint that triggered the action /// The first parameter passed with the action public delegate void EndpointAction(Endpoint sender, T obj); /// /// Defines a delegate for endpoint actions with two additional parameters. /// /// Type of the first parameter /// Type of the second parameter /// The endpoint that triggered the action /// The first parameter passed with the action /// The second parameter passed with the action public delegate void EndpointAction(Endpoint sender, T1 obj1, T2 obj2); /// /// Defines a delegate for endpoint actions with three additional parameters. /// /// Type of the first parameter /// Type of the second parameter /// Type of the third parameter /// The endpoint that triggered the action /// The first parameter passed with the action /// The second parameter passed with the action /// The third parameter passed with the action public delegate void EndpointAction(Endpoint sender, T1 obj1, T2 obj2, T3 obj3); /// /// Defines a delegate for endpoint actions with four additional parameters. /// /// Type of the first parameter /// Type of the second parameter /// Type of the third parameter /// Type of the fourth parameter public delegate void EndpointAction(Endpoint sender, T1 obj1, T2 obj2, T3 obj3, T4 obj4); /// /// Defines a delegate for endpoint actions with five additional parameters. /// /// Type of the first parameter /// Type of the second parameter /// Type of the third parameter /// Type of the fourth parameter /// Type of the fifth parameter public delegate void EndpointAction(Endpoint sender, T1 obj1, T2 obj2, T3 obj3, T4 obj4, T5 obj5); /// /// Defines a delegate for endpoint actions with six additional parameters. /// /// Type of the first parameter /// Type of the second parameter /// Type of the third parameter /// Type of the fourth parameter /// Type of the fifth parameter /// Type of the sixth parameter public delegate void EndpointAction(Endpoint sender, T1 obj1, T2 obj2, T3 obj3, T4 obj4, T5 obj5, T6 obj6); }