75 lines
1.3 KiB
TypeScript
75 lines
1.3 KiB
TypeScript
|
|
/**
|
||
|
|
* ACME Protocol interfaces per RFC 8555
|
||
|
|
*/
|
||
|
|
|
||
|
|
export interface IAcmeDirectory {
|
||
|
|
newNonce: string;
|
||
|
|
newAccount: string;
|
||
|
|
newOrder: string;
|
||
|
|
newAuthz?: string;
|
||
|
|
revokeCert?: string;
|
||
|
|
keyChange?: string;
|
||
|
|
meta?: IAcmeDirectoryMeta;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeDirectoryMeta {
|
||
|
|
termsOfService?: string;
|
||
|
|
website?: string;
|
||
|
|
caaIdentities?: string[];
|
||
|
|
externalAccountRequired?: boolean;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeIdentifier {
|
||
|
|
type: 'dns';
|
||
|
|
value: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeAccount {
|
||
|
|
status: string;
|
||
|
|
contact?: string[];
|
||
|
|
termsOfServiceAgreed?: boolean;
|
||
|
|
orders?: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeAccountCreateRequest {
|
||
|
|
termsOfServiceAgreed: boolean;
|
||
|
|
contact?: string[];
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeOrder {
|
||
|
|
url: string;
|
||
|
|
status: string;
|
||
|
|
expires?: string;
|
||
|
|
identifiers: IAcmeIdentifier[];
|
||
|
|
authorizations: string[];
|
||
|
|
finalize: string;
|
||
|
|
certificate?: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeAuthorization {
|
||
|
|
identifier: IAcmeIdentifier;
|
||
|
|
status: string;
|
||
|
|
expires?: string;
|
||
|
|
challenges: IAcmeChallenge[];
|
||
|
|
wildcard?: boolean;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeChallenge {
|
||
|
|
type: string;
|
||
|
|
url: string;
|
||
|
|
status: string;
|
||
|
|
token: string;
|
||
|
|
validated?: string;
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeCsrOptions {
|
||
|
|
commonName: string;
|
||
|
|
altNames?: string[];
|
||
|
|
}
|
||
|
|
|
||
|
|
export interface IAcmeHttpResponse {
|
||
|
|
status: number;
|
||
|
|
headers: Record<string, string>;
|
||
|
|
data: any;
|
||
|
|
}
|