Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: add builtin methods #36

Closed
wants to merge 23 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
12 changes: 12 additions & 0 deletions src/resources/builtins/abgeltungssteuersatz.ttsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
package abgeltungssteuersatz

// abgelt_st.yaml --------------------------------------------------------

/**
* Constant for the Capital Income Tax Rate as defined in §32d (1) EStG.
* Reference: Art. 1 G. v. 14.08.2007
*/
public const abgeltungssteuersatz: Float {
from 1984-01-01 = 0.0;
from 2009-01-01 = 0.25;
}
118 changes: 118 additions & 0 deletions src/resources/builtins/arbeitslosengeld.ttsl
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
package arbeitslosengeld

// arbeitsl_geld.yaml ----------------------------------------------------

/**
* Income which is not deducted from unemployment benefit.
* § 155 SGB III, vorher § 141 (1) S. 1
*/
public const arbeitslosenGeldFreibetrag: Int {
// Art. 1 G. v. 21.07.1999 BGBl. I S. 1648
from 1999-08-01 = 161;

// Art. 3 G. v. 21.12.2000 BGBl. I S. 1983
from 2002-01-01 = 165;
}

/**
* Fictitious social insurance contribution rate
* § 153 (1) Nr. 1 SGB III. Wird angewendet auf das Bemessungsentgelt. ACHTUNG! Beim
* Elterngeld gibt es eine ähnliche Größe.
*/
public const sozialVersicherungsPauschale: Float {
from 1984-01-01 = 0.1727;
from 1985-01-01 = 0.1745;
from 1986-01-01 = 0.1775;
from 1987-01-01 = 0.1774;
from 1988-01-01 = 0.1794;
from 1989-01-01 = 0.1795;
from 1990-01-01 = 0.1775;
from 1991-01-01 = 0.179;
from 1992-01-01 = 0.184;
from 1993-01-01 = 0.187;
from 1994-01-01 = 0.1955;
from 1995-01-01 = 0.1915;
from 1996-01-01 = 0.1995;
from 1997-01-01 = 0.2095;
from 1998-01-01 = 0.2105;
from 2000-01-01 = 0.20535;
from 2001-01-01 = 0.2044;
from 2002-01-01 = 0.2065;
from 2003-01-01 = 0.2105;
from 2004-01-01 = 0.2095;
from 2005-01-01 = 0.2074;
from 2006-01-01 = 0.2141;
from 2007-01-01 = 0.2075;
from 2008-01-01 = 0.20475;
from 2009-01-01 = 0.20525;
from 2010-01-01 = 0.20225;
from 2011-01-01 = 0.20625;

// Reference: Art. 2 G. v. 20.12.2011 BGBl. I S. 2854
from 2012-01-01 = 0.21;

// Reference: Art. 1 G. v. 18.12.2018 BGBl. I S. 2651
from 2019-01-01 = 0.2;
}

/**
* Replacement Rate Unemployment Benefit, for childless persons.
* §149 Nr. 2 SGB III, vorher § 129 (2) SGB III. Höhe des Arbeitslosengeldes im
* Verhältnis zum letzten Nettoentgelt bei Personen ohne Kinder im Sinne des EStG.
*/
public const satzOhneKinder: Float {
// Reference: Art. 1 G. v. 24.03.1997 BGBl. I S. 594
from 1998-08-01 = 0.6;
}

/**
* Replacement Rate Unemployment Benefit for persons with children.
* §149 Nr. 1 SGB III, vorher §129 Nr. 1 SGB III. Höhe des Arbeitslosengeldes im
* Verhältnis zum letzten Nettoentgelt bei Personen mit Kindern im Sinne des EStG
*/
public const satzMitKindern: Float {
// Reference: Art. 1 G. v. 24.03.1997 BGBl. I S. 594
from 1998-08-01 = 0.67;
}

/**
* Working hours limit to receive unemployment benefit
* §138 (3) SGB III, früher auch §102 (2) AFG. Grenze, ab der nicht mehr
* Arbeitslosigkeit unterstellt wird.
*/
public const stundengrenze: Int {
from 1969-07-01 = 20;
// Reference: Art. 1 G. v. 20.12.1985 BGBl I S. 2484
from 1986-01-01 = 19;

// Reference: Art. 1 G. v. 20.12.1988 BGBl I S. 2343
from 1989-01-01 = 18;

// Reference: Art. 2 G. v. 20.12.2011 BGBl I S. 2854
from 2012-04-01 = 15;
}

/**
* Length of ALG 1 eligibility
* Dauer des Anspruchs auf ALG 1 richtet sich nach Alter und wie viele Monate
* eine Person versicherungsplichtig in den letzten 5 Jahren war.
*/
public const anspruchsdauer: Dict<Int, Int> {
from 1997-03-24 = {
nach_alter: {
0: 12
50: 15
55: 18
58: 24
},
nach_versicherungspflichtige_monate: {
12: 6
18: 8
20: 10
24: 12
30: 15
36: 18
48: 24
}
}
}
Loading
Loading