@openpolicy/core 0.0.3 → 0.0.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.d.ts +149 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +529 -231
- package/dist/index.js.map +1 -0
- package/dist/index.test.d.ts +2 -0
- package/dist/index.test.d.ts.map +1 -0
- package/dist/privacy.d.ts +7 -0
- package/dist/privacy.d.ts.map +1 -0
- package/dist/privacy.test.d.ts +2 -0
- package/dist/privacy.test.d.ts.map +1 -0
- package/dist/renderers/html.d.ts +3 -0
- package/dist/renderers/html.d.ts.map +1 -0
- package/dist/renderers/markdown.d.ts +3 -0
- package/dist/renderers/markdown.d.ts.map +1 -0
- package/dist/templates/privacy/ccpa-supplement.d.ts +3 -0
- package/dist/templates/privacy/ccpa-supplement.d.ts.map +1 -0
- package/dist/templates/privacy/contact.d.ts +3 -0
- package/dist/templates/privacy/contact.d.ts.map +1 -0
- package/dist/templates/privacy/cookies.d.ts +3 -0
- package/dist/templates/privacy/cookies.d.ts.map +1 -0
- package/dist/templates/privacy/data-collected.d.ts +3 -0
- package/dist/templates/privacy/data-collected.d.ts.map +1 -0
- package/dist/templates/privacy/data-retention.d.ts +3 -0
- package/dist/templates/privacy/data-retention.d.ts.map +1 -0
- package/dist/templates/privacy/gdpr-supplement.d.ts +3 -0
- package/dist/templates/privacy/gdpr-supplement.d.ts.map +1 -0
- package/dist/templates/privacy/introduction.d.ts +3 -0
- package/dist/templates/privacy/introduction.d.ts.map +1 -0
- package/dist/templates/privacy/legal-basis.d.ts +3 -0
- package/dist/templates/privacy/legal-basis.d.ts.map +1 -0
- package/dist/templates/privacy/third-parties.d.ts +3 -0
- package/dist/templates/privacy/third-parties.d.ts.map +1 -0
- package/dist/templates/privacy/user-rights.d.ts +3 -0
- package/dist/templates/privacy/user-rights.d.ts.map +1 -0
- package/dist/templates/terms/acceptance.d.ts +3 -0
- package/dist/templates/terms/acceptance.d.ts.map +1 -0
- package/dist/templates/terms/accounts.d.ts +3 -0
- package/dist/templates/terms/accounts.d.ts.map +1 -0
- package/dist/templates/terms/availability.d.ts +3 -0
- package/dist/templates/terms/availability.d.ts.map +1 -0
- package/dist/templates/terms/changes-to-terms.d.ts +3 -0
- package/dist/templates/terms/changes-to-terms.d.ts.map +1 -0
- package/dist/templates/terms/contact.d.ts +3 -0
- package/dist/templates/terms/contact.d.ts.map +1 -0
- package/dist/templates/terms/disclaimers.d.ts +3 -0
- package/dist/templates/terms/disclaimers.d.ts.map +1 -0
- package/dist/templates/terms/dispute-resolution.d.ts +3 -0
- package/dist/templates/terms/dispute-resolution.d.ts.map +1 -0
- package/dist/templates/terms/eligibility.d.ts +3 -0
- package/dist/templates/terms/eligibility.d.ts.map +1 -0
- package/dist/templates/terms/governing-law.d.ts +3 -0
- package/dist/templates/terms/governing-law.d.ts.map +1 -0
- package/dist/templates/terms/indemnification.d.ts +3 -0
- package/dist/templates/terms/indemnification.d.ts.map +1 -0
- package/dist/templates/terms/intellectual-property.d.ts +3 -0
- package/dist/templates/terms/intellectual-property.d.ts.map +1 -0
- package/dist/templates/terms/introduction.d.ts +3 -0
- package/dist/templates/terms/introduction.d.ts.map +1 -0
- package/dist/templates/terms/limitation-of-liability.d.ts +3 -0
- package/dist/templates/terms/limitation-of-liability.d.ts.map +1 -0
- package/dist/templates/terms/payments.d.ts +3 -0
- package/dist/templates/terms/payments.d.ts.map +1 -0
- package/dist/templates/terms/prohibited-use.d.ts +3 -0
- package/dist/templates/terms/prohibited-use.d.ts.map +1 -0
- package/dist/templates/terms/termination.d.ts +3 -0
- package/dist/templates/terms/termination.d.ts.map +1 -0
- package/dist/templates/terms/third-party-services.d.ts +3 -0
- package/dist/templates/terms/third-party-services.d.ts.map +1 -0
- package/dist/templates/terms/user-content.d.ts +3 -0
- package/dist/templates/terms/user-content.d.ts.map +1 -0
- package/dist/terms.d.ts +7 -0
- package/dist/terms.d.ts.map +1 -0
- package/dist/terms.test.d.ts +2 -0
- package/dist/terms.test.d.ts.map +1 -0
- package/dist/types.d.ts +119 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/validate-terms.d.ts +3 -0
- package/dist/validate-terms.d.ts.map +1 -0
- package/dist/validate-terms.test.d.ts +2 -0
- package/dist/validate-terms.test.d.ts.map +1 -0
- package/dist/validate.d.ts +3 -0
- package/dist/validate.d.ts.map +1 -0
- package/package.json +6 -3
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,149 @@
|
|
|
1
|
+
//#region src/types.d.ts
|
|
2
|
+
type OutputFormat = "markdown" | "html" | "pdf" | "jsx";
|
|
3
|
+
type CompileOptions = {
|
|
4
|
+
formats: OutputFormat[];
|
|
5
|
+
};
|
|
6
|
+
type PolicySection = {
|
|
7
|
+
id: string;
|
|
8
|
+
title: string;
|
|
9
|
+
body: string;
|
|
10
|
+
};
|
|
11
|
+
type Jurisdiction = "us" | "eu" | "ca" | "au" | "nz" | "other";
|
|
12
|
+
type PrivacyPolicyConfig = {
|
|
13
|
+
effectiveDate: string;
|
|
14
|
+
company: {
|
|
15
|
+
name: string;
|
|
16
|
+
legalName: string;
|
|
17
|
+
address: string;
|
|
18
|
+
contact: string;
|
|
19
|
+
};
|
|
20
|
+
dataCollected: Record<string, string[]>;
|
|
21
|
+
legalBasis: string;
|
|
22
|
+
retention: Record<string, string>;
|
|
23
|
+
cookies: {
|
|
24
|
+
essential: boolean;
|
|
25
|
+
analytics: boolean;
|
|
26
|
+
marketing: boolean;
|
|
27
|
+
};
|
|
28
|
+
thirdParties: {
|
|
29
|
+
name: string;
|
|
30
|
+
purpose: string;
|
|
31
|
+
}[];
|
|
32
|
+
userRights: string[];
|
|
33
|
+
jurisdictions: Jurisdiction[];
|
|
34
|
+
};
|
|
35
|
+
type DisputeResolutionMethod = "arbitration" | "litigation" | "mediation";
|
|
36
|
+
type TermsOfServiceConfig = {
|
|
37
|
+
effectiveDate: string;
|
|
38
|
+
company: {
|
|
39
|
+
name: string;
|
|
40
|
+
legalName: string;
|
|
41
|
+
address: string;
|
|
42
|
+
contact: string;
|
|
43
|
+
};
|
|
44
|
+
acceptance: {
|
|
45
|
+
methods: string[];
|
|
46
|
+
};
|
|
47
|
+
eligibility?: {
|
|
48
|
+
minimumAge: number;
|
|
49
|
+
jurisdictionRestrictions?: string[];
|
|
50
|
+
};
|
|
51
|
+
accounts?: {
|
|
52
|
+
registrationRequired: boolean;
|
|
53
|
+
userResponsibleForCredentials: boolean;
|
|
54
|
+
companyCanTerminate: boolean;
|
|
55
|
+
};
|
|
56
|
+
prohibitedUses?: string[];
|
|
57
|
+
userContent?: {
|
|
58
|
+
usersOwnContent: boolean;
|
|
59
|
+
licenseGrantedToCompany: boolean;
|
|
60
|
+
licenseDescription?: string;
|
|
61
|
+
companyCanRemoveContent: boolean;
|
|
62
|
+
};
|
|
63
|
+
intellectualProperty?: {
|
|
64
|
+
companyOwnsService: boolean;
|
|
65
|
+
usersMayNotCopy: boolean;
|
|
66
|
+
};
|
|
67
|
+
payments?: {
|
|
68
|
+
hasPaidFeatures: boolean;
|
|
69
|
+
refundPolicy?: string;
|
|
70
|
+
priceChangesNotice?: string;
|
|
71
|
+
};
|
|
72
|
+
availability?: {
|
|
73
|
+
noUptimeGuarantee: boolean;
|
|
74
|
+
maintenanceWindows?: string;
|
|
75
|
+
};
|
|
76
|
+
termination?: {
|
|
77
|
+
companyCanTerminate: boolean;
|
|
78
|
+
userCanTerminate: boolean;
|
|
79
|
+
effectOfTermination?: string;
|
|
80
|
+
};
|
|
81
|
+
disclaimers?: {
|
|
82
|
+
serviceProvidedAsIs: boolean;
|
|
83
|
+
noWarranties: boolean;
|
|
84
|
+
};
|
|
85
|
+
limitationOfLiability?: {
|
|
86
|
+
excludesIndirectDamages: boolean;
|
|
87
|
+
liabilityCap?: string;
|
|
88
|
+
};
|
|
89
|
+
indemnification?: {
|
|
90
|
+
userIndemnifiesCompany: boolean;
|
|
91
|
+
scope?: string;
|
|
92
|
+
};
|
|
93
|
+
thirdPartyServices?: {
|
|
94
|
+
name: string;
|
|
95
|
+
purpose: string;
|
|
96
|
+
}[];
|
|
97
|
+
disputeResolution?: {
|
|
98
|
+
method: DisputeResolutionMethod;
|
|
99
|
+
venue?: string;
|
|
100
|
+
classActionWaiver?: boolean;
|
|
101
|
+
};
|
|
102
|
+
governingLaw: {
|
|
103
|
+
jurisdiction: string;
|
|
104
|
+
};
|
|
105
|
+
changesPolicy?: {
|
|
106
|
+
noticeMethod: string;
|
|
107
|
+
noticePeriodDays?: number;
|
|
108
|
+
};
|
|
109
|
+
privacyPolicyUrl?: string;
|
|
110
|
+
};
|
|
111
|
+
type PolicyInput = ({
|
|
112
|
+
type: "privacy";
|
|
113
|
+
} & PrivacyPolicyConfig) | ({
|
|
114
|
+
type: "terms";
|
|
115
|
+
} & TermsOfServiceConfig);
|
|
116
|
+
type ValidationIssue = {
|
|
117
|
+
level: "error" | "warning";
|
|
118
|
+
message: string;
|
|
119
|
+
};
|
|
120
|
+
//#endregion
|
|
121
|
+
//#region src/privacy.d.ts
|
|
122
|
+
declare function compilePrivacyPolicy(config: PrivacyPolicyConfig, options?: CompileOptions): {
|
|
123
|
+
format: OutputFormat;
|
|
124
|
+
content: string;
|
|
125
|
+
sections: PolicySection[];
|
|
126
|
+
}[];
|
|
127
|
+
//#endregion
|
|
128
|
+
//#region src/terms.d.ts
|
|
129
|
+
declare function compileTermsOfService(config: TermsOfServiceConfig, options?: CompileOptions): {
|
|
130
|
+
format: OutputFormat;
|
|
131
|
+
content: string;
|
|
132
|
+
sections: PolicySection[];
|
|
133
|
+
}[];
|
|
134
|
+
//#endregion
|
|
135
|
+
//#region src/validate.d.ts
|
|
136
|
+
declare function validatePrivacyPolicy(config: PrivacyPolicyConfig): ValidationIssue[];
|
|
137
|
+
//#endregion
|
|
138
|
+
//#region src/validate-terms.d.ts
|
|
139
|
+
declare function validateTermsOfService(config: TermsOfServiceConfig): ValidationIssue[];
|
|
140
|
+
//#endregion
|
|
141
|
+
//#region src/index.d.ts
|
|
142
|
+
declare function compilePolicy(input: PolicyInput, options?: CompileOptions): {
|
|
143
|
+
format: OutputFormat;
|
|
144
|
+
content: string;
|
|
145
|
+
sections: PolicySection[];
|
|
146
|
+
}[];
|
|
147
|
+
//#endregion
|
|
148
|
+
export { type CompileOptions, type DisputeResolutionMethod, type Jurisdiction, type OutputFormat, type PolicyInput, type PolicySection, type PrivacyPolicyConfig, type TermsOfServiceConfig, type ValidationIssue, compilePolicy, compilePrivacyPolicy, compileTermsOfService, validatePrivacyPolicy, validateTermsOfService };
|
|
149
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/types.ts","../src/privacy.ts","../src/terms.ts","../src/validate.ts","../src/validate-terms.ts","../src/index.ts"],"mappings":";KAAY,YAAA;AAAA,KAEA,cAAA;EAAmB,OAAA,EAAS,YAAA;AAAA;AAAA,KAE5B,aAAA;EACX,EAAA;EACA,KAAA;EACA,IAAA;AAAA;AAAA,KAGW,YAAA;AAAA,KAEA,mBAAA;EACX,aAAA;EACA,OAAA;IACC,IAAA;IACA,SAAA;IACA,OAAA;IACA,OAAA;EAAA;EAED,aAAA,EAAe,MAAA;EACf,UAAA;EACA,SAAA,EAAW,MAAA;EACX,OAAA;IAAW,SAAA;IAAoB,SAAA;IAAoB,SAAA;EAAA;EACnD,YAAA;IAAgB,IAAA;IAAc,OAAA;EAAA;EAC9B,UAAA;EACA,aAAA,EAAe,YAAA;AAAA;AAAA,KAGJ,uBAAA;AAAA,KAKA,oBAAA;EACX,aAAA;EACA,OAAA;IACC,IAAA;IACA,SAAA;IACA,OAAA;IACA,OAAA;EAAA;EAED,UAAA;IAAc,OAAA;EAAA;EACd,WAAA;IAAgB,UAAA;IAAoB,wBAAA;EAAA;EACpC,QAAA;IACC,oBAAA;IACA,6BAAA;IACA,mBAAA;EAAA;EAED,cAAA;EACA,WAAA;IACC,eAAA;IACA,uBAAA;IACA,kBAAA;IACA,uBAAA;EAAA;EAED,oBAAA;IACC,kBAAA;IACA,eAAA;EAAA;EAED,QAAA;IACC,eAAA;IACA,YAAA;IACA,kBAAA;EAAA;EAED,YAAA;IAAiB,iBAAA;IAA4B,kBAAA;EAAA;EAC7C,WAAA;IACC,mBAAA;IACA,gBAAA;IACA,mBAAA;EAAA;EAED,WAAA;IAAgB,mBAAA;IAA8B,YAAA;EAAA;EAC9C,qBAAA;IACC,uBAAA;IACA,YAAA;EAAA;EAED,eAAA;IAAoB,sBAAA;IAAiC,KAAA;EAAA;EACrD,kBAAA;IAAuB,IAAA;IAAc,OAAA;EAAA;EACrC,iBAAA;IACC,MAAA,EAAQ,uBAAA;IACR,KAAA;IACA,iBAAA;EAAA;EAED,YAAA;IAAgB,YAAA;EAAA;EAChB,aAAA;IAAkB,YAAA;IAAsB,gBAAA;EAAA;EACxC,gBAAA;AAAA;AAAA,KAGW,WAAA;EACN,IAAA;AAAA,IAAoB,mBAAA;EACpB,IAAA;AAAA,IAAkB,oBAAA;AAAA,KAEZ,eAAA;EACX,KAAA;EACA,OAAA;AAAA;;;iBC5De,oBAAA,CACf,MAAA,EAAQ,mBAAA,EACR,OAAA,GAAS,cAAA;EACL,MAAA,EAAQ,YAAA;EAAc,OAAA;EAAiB,QAAA,EAAU,aAAA;AAAA;;;iBCatC,qBAAA,CACf,MAAA,EAAQ,oBAAA,EACR,OAAA,GAAS,cAAA;EACL,MAAA,EAAQ,YAAA;EAAc,OAAA;EAAiB,QAAA,EAAU,aAAA;AAAA;;;iBCnDtC,qBAAA,CACf,MAAA,EAAQ,mBAAA,GACN,eAAA;;;iBCFa,sBAAA,CACf,MAAA,EAAQ,oBAAA,GACN,eAAA;;;iBCgBa,aAAA,CAAc,KAAA,EAAO,WAAA,EAAa,OAAA,GAAU,cAAA;UAAc,YAAA"}
|